开启计算机远程唤醒功能,有几个必要条件:

  • 主板要支持,同时 BIOS 中远程唤醒开关已经打开;
  • 网卡要支持,同时 远程唤醒配置为 Wake-on: g (magic packet activity)
  • 发出指令的计算机,事先保存了远程唤醒主机的 MAC 地址 ;
  • 两台主机在同一个二层网络中

主板开启远程唤醒功能

不同品牌电脑,进入主板BIOS的方式也不相同。请自行研究。

配置网卡

通过 ethtool 命令查看,(这里假设网卡名称为 ens1p0):

# ethtool ens1p0 | grep Wake-on
Supports Wake-on: pumbag
Wake-on: d

大部分都显示 Wake-on: d ,可以通过下面的命令配置为 Wake-on: g

# ethtool -s ens1p0 wol g

随机启动

如果需要重启后自动执行这个指令,可以使用 crontab

sudo crontab -e

写入:

@reboot /usr/sbin/ethtool -s ens1p0 wol g

远程唤醒操作

在另一台 linux 主机中,可以使用 wakeonlan 命令完成唤醒:

wakeonlan 84:a9:3e:90:be:4a

参考资料