在Linux下通过Wake On LAN实现网络唤醒远程开机
局域网下可以控制开关机主要有2种方法,一是通过设置主板实现来电自启动,通过智能开关远程开机。还有一种方式就是可以通过一台已经启动的机器通过Wake On LAN去开启唤醒另外一台机器。
现在介绍通过一台已经启动的linux机器通过Wake On LAN去唤醒开期一台机器。
前提条件:
操作机器与目标机器在同一局域网内
目标机器电源和网线已插好
目标机器网卡和主板均支持远程唤醒并在BIOS里已经设置了网络唤醒(WOL)开机。
目前一般的机器网卡和主板都支持远程唤醒开机,需要在BIOS里设置将网络唤醒开机开启。
开机时进入BIOS,查看CMOS中的“Power Management Setup”,通常里面会有Power On byOnborad Lan,将其设置为“Enable”。
如下图,在电源管理中开启Power On by Onborad Lan。不同的主板BIOS设置不太一样。具体根据自己机器实际情况进行设置。
如何在Linux下通过Wake On LAN远程唤醒,具体操作步骤如下:
1. 在本机安装Wake On LAN。可从官方网站下载。
CentOS 可以用yum命令安装:
yum install wol
但是redhat使用yum命令,需要提前注册,我引用了阿里的源,也是无法直接使用yum命令安装
2.直接下载wol的rpm包通过rpm安装。
wol的百度云地址链接:https://pan.baidu.com/s/1T-lWKC2F7JX7tSdf6Ckj_Q 密码:rfxe
3.将wol安装包拷贝到Linux系统下,如图
4.切换账户到root下,执行:rpm -ivh wol-0.7.1-2.2.el5.rf.x86_64.rpm
5. 登录需要远程唤醒开机的目标机器,运行ethtool命令查看网卡是否支持WakeOn Lan
执行命令:
ethtool eth0
看这两行
Supports Wake-on:pumbg
Wake-on: d
若Wake-on为d,表示禁用WakeOn LAN,需要启用它。
执行命令:ethtool -s eth0 wol g
6. 查看目标机器网卡的MAC地址:
执行命令:wol 00:17:a4:cd:c3:c8