Ubuntu 12.04 で ACPI wake up を試してみた

ubuntu 12.04 で http://www.mythtv.org/wiki/ACPI_Wakeup の通りに ACPI wake up を試してみた。

BIOS setup

grep -i rtc /var/log/syslog

として

RTC can wake from S4

を確認する。

確認できない場合は BIOS の設定を確認する。 私の環境では問題なかった。

UTC

cat /proc/driver/rtc

で UTC を使用していることを確認する。(日本なので、時刻が9時間ずれていればよい?)

Disable HWclock updates

wake up の設定をした後に hardware clock が更新されると wake up が動かなくなるので、 この更新を無効にする。 /etc/init/hwclock-save.conf の exec から始まる行に # を加えてコメントアウトする。

wake up をテストする

ls /sys/class/rtc/rtc0/wakealarm

でファイルがあるかどうかを確認する。 最近の linux kernel なら問題ないはず。 このファイルに unix time を秒で書きこめば良いらしい。

5分後に起動してみる。

date '+%s' -d '+ 5 minutes' > /sys/class/rtc/rtc0/wakealarm

として起動時間を書き込む。 設定がうまくいかないときや再設定したいときは一度 0 を書き込む。

echo 0 > /sys/class/rtc/rtc0/wakealarm
date '+%s' -d '+ 5 minutes' > /sys/class/rtc/rtc0/wakealarm

設定後に

cat /proc/driver/rtc

の alrm_time が5分後になっていることを確認する。

shutdown -h now

でシャットダウンすると S5 からのタイマーの復帰がサポートされていれば5分後に起動する。

また、S4 からの復帰を試すならシャットダウンの代わりに

pm-hibernate

とする。

参考

Tags of current page