轉自:http://yangbajing.blog.chinaunix.net/uid-10480699-id-5179860.html
今天發現個可以對linux服務器進行遠程開機的軟件-wakeonlan,軟件可在
http://sourceforge.net/projects/wake-on-lan/下載。通過wakeonlan,可以啟動已關閉的linux服務器,這對一些沒有ILO口等遠程管理的服務器非常好用,有了它再也不用為了異常關閉的服務器跑一趟機房了。記錄了一下使用的方法,如下:
一、開啟服務器網卡硬件支持
我這邊的測試用的是dell2950,開機后按CTRL+S進入網卡boot agent設置
//Pre-boot Wake On LAN = Enable
二、 確認/啟用服務器遠程開機
[root@localhost ~]#ethtool eth0
Settings for eth0:
--- 略 ---
Supports Wake-on: pumbag
Wake-on: d
--- 略 ---
其他信息不用關注,重要的是上面列出的兩項:
Supports Wake-on: pumbag
-
p Wake on phy activity
-
u Wake on unicast messages
-
m Wake on multicast messages
-
b Wake on broadcast messages
-
a Wake on ARP
-
g Wake on MagicPacket(tm)
Wake-on: d
wake-on 項值默認為 d,表示禁用wake on lan。需要把wake-on的值設為g以啟用 wake on lan
[root@localhost ~]#ethtool -s eth0 wol g
需注意的是,當機器重啟后,eth0的設置會返回默認的Wake-on: d 狀態,可通過下面的2個方法來解決這個問題:
(1) [root@localhost ~]#echo "/sbin/ethtool -s eth0 wol g" >>/etc/rc.local
(2) [root@localhost ~]#vi /etc/sysconfig/network-scripts/ifcfg-eth0
添加-- ETHTOOL_OPTS="wol g"
三、記錄好網卡的MAC地址
啟用遠程開機后將網卡的mac地址記錄下來,待會需要用到
[root@localhost ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:15:17:2F:01:06
inet addr:192.168.22.248 Bcast:192.168.22.255 Mask:255.255.255.0
inet6 addr: fe80::215:17ff:fe2f:106/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:251 errors:0 dropped:0 overruns:0 frame:0
TX packets:92 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:27599 (26.9 KiB) TX bytes:12111 (11.8 KiB)
Interrupt:16 Memory:fc3e0000-fc400000
記錄好MAC地址 00:15:17:2F:01:06 ,關閉服務器並准備測試。
四、 測試遠程啟動
安裝好wol,從我上面提供的的下載地址中下載軟件,我下的是windows版的-wol-0.5.1-win32.zip
下載后解壓到了C盤。
C:\Users\Administrator>cd /
C:\>cd wol
C:\wol>dir
驅動器 C 中的卷沒有標簽。
卷的序列號是 50B2-39FF
C:\wol 的目錄
2012/06/21 10:25 <DIR> .
2012/06/21 10:25 <DIR> ..
2002/02/13 20:31 <DIR> bin
2002/02/13 20:29 <DIR> info
2002/02/13 20:29 <DIR> lib
2002/02/13 20:29 <DIR> share
0 個文件 0 字節
6 個目錄 12,446,007,296 可用字節
C:\wol>cd bin
C:\wol\bin>wol.exe 00:15:17:2F:01:06 //啟動服務器
Waking up 00:15:17:2F:01:06...
C:\wol\bin>
這樣就完成對服務器的遠程開機,需要注的是需遠程開機的服務器和我們執行wol命令的機器必須在同一個局域網內。比如上面的測試,我的windows服務器和需遠程開機的linux服務器的網段都是192.168.22.0/24。