自宅サーバー自動起動用シェルスクリプトメモ
サーバーの自動起動用に
/sys/class/rtc/rtc0/wakealarm
に時間をタイムスタンプで指定する。
上書きする際は0で初期化しないと書き換えられない?
crontabに設定してシェル実行後に起動する日程を設定して、そのあとでシャットダウン
例:
0 4 * * * sh /site/auto_power.sh
rootで実行しないとシャットダウンコマンドが動かないので注意
#!/bin/sh #初期化 echo 0 > /sys/class/rtc/rtc0/wakealarm #該当の時間が何曜日か取得する day_of_week=`date -d +1hour +%w` if [ $day_of_week -eq 6 ]; then #土曜日 #4時設定で14起動 echo `date +%s -d +10hour` > /sys/class/rtc/rtc0/wakealarm elif [ $day_of_week -eq 0 ]; then #日曜日 #4時設定で14起動 echo `date +%s -d +10hour` > /sys/class/rtc/rtc0/wakealarm else #4時設定で18起動 echo `date +%s -d +14hour` > /sys/class/rtc/rtc0/wakealarm fi #設定内容の表示 #cat /proc/driver/rtc /sbin/shutdown -h now