如果我们的服务器没有部署在本地(通常都会把服务器托管到IDC机房),而且服务器在机房中不止一台,其中一台被关闭时,则我们可以远程连接一台没有关机的服务器上,然后进行远程开机。
用yum命令安装远程开机需要的软件:yuminstallwol
如何进行远程开机?
第一步:首先要确定你的linux服务器是否支持远程开机?登录到目标服务器,用ethtool这个命令打印出网卡的信息
[root@localhostlhd]#ethtooleth0
Settingsforeth0:
Supportedports:[TPMII]
Supportedlinkmodes:10baseT/Half10baseT/Full
100baseT/Half100baseT/Full
Supportsauto-negotiation:Yes
Advertisedlinkmodes:10baseT/Half10baseT/Full
100baseT/Half100baseT/Full
Advertisedauto-negotiation:Yes
Speed:100Mb/s
Duplex:Full
Port:MII
PHYAD:32
Transceiver:internal
Auto-negotiation:on
SupportsWake-on:pumbg
Wake-on:d
Currentmessagelevel:0x00000007(7)
Linkdetected:yes
可以看到,ethtool把网卡的信息全部列出,我们只关心其中的这两项:
SupportsWake-on:pumbg
Wake-on:d
如果wake-on一项值为d,表示禁用wakeonlan
值为g,表示启用wakeonlan
因为此机器禁用了wakeonlan,所以用下面的命令来启用它:
[root@localhostlhd]#ethtool-seth0wolg
再用ethtool命令进行查看,会发现:
Wake-on:g
OK,目标机器的网卡已经支持了远程开机,下面我们得到它的本地MAC地址:
[root@localhostlhd]#ifconfig
eth0Linkencap:EthernetHWaddr00:03:0D:1D:1F:97
inetaddr:192.168.6.101Mask:255.255.255.0
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
RXpackets:34470errors:0dropped:0overruns:0frame:0
TXpackets:35377errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:1000
RXbytes:31559763(30.0MiB)TXbytes:5340032(5.0MiB)
Interrupt:5Baseaddress:0x2c00
把HWaddr00:03:0D:1D:1F:97这一项记录下来即可,现在你可以试着把目标机器关闭。
第二步:开机
现在我们需要登录到已安装了wakeonlan软件的机器上,在上面执行开机命令:
wol00:03:0D:1D:1F:97
稍后就会发现,目标机器已开机可以登录了。