LANで電源ON
投稿:2005-10-28
大して変わらないPCケースが6台積まれていると区別がつかなくて間違って別のPCをONにしてしまうことがあります。
電源OFFの際はtelnetでloginしてshutdown -h nowで済ましていますけれどONの際は電源ボタンを押さなくてはなりません。
色々と調べているうちにWOL(Wakeup On Lan)が解決に使えることがわかりウチのPCに仕込んでみました。
メインはAmithlonなのでAmigaで動作するWOLクライアントを見つけました。ソフトの名前は「hpwake」です。
CLIからhpwake 01:23:45:67:89:abという型式でMACアドレスを指定するとWOLのパケットを送信します。
ターゲットではethtool -s eth0 wol gを1回実行しておくとNICが電源OFF後から待機します。
1回だけ有効なので起動の度にethtoolを実行しておきます。
下記のスクリプトを用意しておくと簡単に起動時に実行できます。
-----------------------------
/etc/rc.d/init.d/wakeuponlan
-----------------------------
#!/bin/sh
#
# chkconfig: 3 98 2
#
# description: set wakeup on LAN.
#
# Source 'em up
. /etc/init.d/functions
start() {
echo -n $"set wakeup on LAN: "
ethtool -s eth1 wol g
RETVAL=1
echo
return $RETVAL
}
case "$1" in
start)
start
;;
status)
ethtool eth1
;;
*)
echo $"Usage: $0 {start|status}"
exit 1
esac
exit 0
chkconfig --add wakeuponlan chkconfig --list service wakeuponlan start service wakeuponlan status最後のコマンドで何行も出て来る中の末尾から2~3行目に
Wake-on: g
と表示されるとLinux側の準備は完了。 続いてBIOSを設定しますので再起動させます。
shutdown -r now
BIOSの設定画面でPMEとWakeup On LAN(なければWakeup On Ring)をEnableにしてLinuxを再起動後にshutdown -h nowで電源OFF。 電源を入れたい時はAmigaのCLIからhpwake 01:23:45:67:89:abといった形式で起動できるようになります。
