在Linux下用Wake On LAN实现远程开机
在Linux下用Wake On LAN实现远程开机
请先确认满足以下环境要求:
操作机器与目标机器在同一局域网内
目标机器电源和网线已插好
目标机器网卡和主板均支持远程唤醒
具体操作步骤:
1. 在本机安装Wake On LAN。可从官方网站下载。
如果使用Fedora,则可以用yum命令安装:
yum install wol
具体下载目录在 /pub/2011/08/09/Wake On LAN/
2. 登录目标机器,运行ethtool命令查看网卡是否支持Wake On Lan
[root@localhost]# ethtool eth0
看这两行
Supports Wake-on: pumbg
Wake-on: d
若Wake-on为d,表示禁用Wake On LAN,需要启用它。
[root@localhost]# ethtool -s eth0 wol g
如果已经是g就不用管了,说明目标机器的网卡已经支持Wake On LAN.
3. 查看目标机器网卡的MAC地址
[root@localhost]# ifconfig
比如获得的MAC地址为 00:01:0A:02:0B:03
4. 关闭目标机器,在主机运行wol命令
wol 00:01:0A:02:0B:03
一般来说,目标机器这时就会开启了。如果没用,请进入下一步检查主板是否支持Wake On LAN
5. 检查主板是否支持Wake On LAN
开机时进入BIOS,查看CMOS中的“Power Management Setup”,通常里面会有“Wake On LAN”,将其设置为“Enable”。若没有Wake On LAN,可以再看看有没有“Wake On PCI Card”。这里需要留意PCI的选项可能有两个,确保每次只将其中之一设置为Enable,不然可能会造成机器循环重启。
远程开机还是很给力的。我给隔壁主机设置了开机自动打开dhcp和ssh服务,wol唤醒它之后用ssh登录,就可以操作或远程关机,实现了对其控制的目的。