admin管理员组

文章数量:1625838

在Linux下使用Wake On LAN实现远程开机,这样就免去机房的麻烦了!
方法/步骤
安装:apt-get install ethtool
1 在Linux下使用Wake On LAN实现远程开机,需要满足以下环境要求,首先操作机器与目标机器在同一局域网内;目标机器电源和网线已插好;目标机器网卡和主板均支持远程唤醒。
登录目标机器,运行ethtool命令查看网卡是否支持Wake On Lan,命令如下所示:
[root@localhost]# ethtool eth0
Linux下查看网卡支持WOL
2 在结果内查看是否有如下内容:
Supports Wake-on: pumbgWake-on: d
若Wake-on值为d,表示禁用Wake On LAN;若Wake-on值为g,表示启用Wake On LAN。
3 若要启用Wake On LAN,启用的命令如下所示:
[root@localhost]# ethtool -s eth0 wol g
如果已经是g就不用管了,说明目标机器的网卡已经支持Wake On LAN。
4 然后查看目标机器网卡的MAC地址,命令如下所示:
[root@localhost]# ifconfig
比如获得的MAC地址为 00:01:0A:02:0B:03,接着关闭目标机器,在主机运行wol命令,如下所示:
[root@localhost]# ./wol 00:01:0A:02:0B:03
5 一般来说,目标机器这时就会开启了。如果没有开启,进一步检查主板是否支持Wake On LAN,开机时进入BIOS,查看CMOS中的Power Management Setup,通常里面会有Wake On LAN,将其设置为Enable。若没有Wake On LAN,可以再看看有没有Wake On PCI Card。这里需要留意PCI的选项可能有两个,确保每次只将其中之一设置为Enable,不然可能会造成机器循环重启。
6 如果当机器重启后,eth0的设置又会回复到Wake-on: d 状态,问题的解决有两种办法,分别是:
方法一,是把/sbin/ethtool -s eth0 wol
g这条命令附加到/etc/rc.local这个文件中,则下次开机后会自动执行。
方法二,是编辑/etc/sysconfig/network-scripts/ifcfg-eth0,在里面添加上一行,如下所示:
ETHTOOL_OPTS=“wol g”

网络唤醒的局限性,它只能在局域网中应用,而不能通过互联网运行,因为机器关闭后,完全是靠网卡唤醒机器,此时的机器是关闭的,没有操作系统运行,也就谈不上支持TCP/IP协议,当然也就不能通过互联网运行了。也就是说,如果在某个局域网中只有一台机器,就不能使用此功能了。另外必须能登录到局域网中的一台机器上,在此机器上运行Wake On LAN去唤醒目标机器,前提条件就是目标机器和登录的机器在同一局域网中。

本文标签: 网卡LinuxWoL