PCの自動shutdown/wakeup 死活監視 send-mail
時間を決めてPCのシャットダウン/時間を決めてPCの電源アップ
1) wakeup-onlanを使うので、おんなじLANの中でのみ有効。
2) 起こされる方のPC(というか、NICの部分)
はwakeup-onlanをサポートしていること
PCによってはBIOSの設定を手動でおこなう必要があるかも
3) おんなじLAN内に一台起こし役のPCが必要
省電力の組み込み機器とか、お古のnotebookとかが吉かな?
まずは、シャットダウンの方から、
シャットダウンは
それぞれのシャットダウンしたいPCにて
[root@cent5-64b-42 named]# crontab -l 0 5 * * * /root/shutdown.sh [root@cent5-64b-42 named]# cat /root/shutdown.sh #!/bin/sh /sbin/shutdown -h now [root@cent5-64b-42 named]#
ってかんじで、cronで落としたい時間を指定(ここでは毎朝5AM)
つぎは起こし役のPCの方は
[root@cent5-64b-41 ~]# crontab -l 50 3 * * * /root/wakeup-42.sh [root@cent5-64b-41 ~]# cat /root/wakeup-42.sh /sbin/ether-wake 18:a9:05:xx:xx:xx ping 192.168.1.42 [root@cent5-64b-41 ~]#
18:a9:05:xx:xx:xx は起こしたい相手のmacアドレス
コマンドは
redhat系は #ether-wake
debian系は #etherwake
ここでは、3:50AMにおきろ、おきろといっている。
約1時間起こして、その間にcron.dailyが走ってバックアップを
とったあと二度寝してもらう、って算段。
うまくいっている様子w
[root@cent5-64b-42 ~]# cat /var/log/messages | egrep "restart|shutdown" | tail -7 Jun 9 03:52:06 cent5-64b-42 syslogd 1.4.1: restart. Jun 9 05:00:01 cent5-64b-42 shutdown[11108]: shutting down for system halt Jun 10 03:52:06 cent5-64b-42 syslogd 1.4.1: restart. Jun 10 05:00:02 cent5-64b-42 shutdown[11111]: shutting down for system halt Jun 11 03:52:06 cent5-64b-42 syslogd 1.4.1: restart. Jun 11 05:00:01 cent5-64b-42 shutdown[11108]: shutting down for system halt Jun 11 09:36:06 cent5-64b-42 syslogd 1.4.1: restart. [root@cent5-64b-42 ~]#
こんなスクリプトで死活監視
[root@cent5-64b-40 cron.daily]# cat send-mail.sh #!/bin/sh DAY=`date +%Y/%m/%d` HOST=`uname -n` MAIL=hirasawa@hirasawa.local SUB=$HOST-----$DAY mail -s $SUB $MAIL << _EOF_ ----------------- date----------- `date +%Y/%m/%d` ----------------- uname -n----------- `uname -n` ----------------- find /export -mtime -1 result----------- `find /export -mtime -1` ------------------find /home -mtime -1 ressult ---------- `find /home -mtime -1` ----------------- df result----------- `df` ---------------------- _EOF_ [root@cent5-64b-40 cron.daily]#