Fedoraのサスペンドとハイバネート

Fedora 8 でコンソールからサスペンドとハイバネートを行うには、それぞれpm-suspend、pm-hibernateと打てば良い。(rootでなくても良い。)
サスペンド・ハイバネートがうまくいかないときは、pm-suspend(hibernate)に適切なオプションをつけるとうまく動作するかもしれない。
そのためには、HAL Sleep Quirksにいき、javascriptを有効にして「I want to check common problems and to find quirks to try」を選ぶ。

ページに書いてある指示にしたがって、pm-suspend(hibernate)に必要なオプションが決まったら、毎回同じオプションをつけなくても良いように設定する。

まず、/usr/lib/pm-utils/bin/pm-actionをテキストエディタで参照して、それぞれのオプションに対応した環境変数を見つける。
例えばDELLのVostro1400の場合は、--quirk-vbe-post --quirk-vbestate-restore --quirk-vga-mode3 が必要なので、59行目あたり、

case "$1" in
       --quirk-dpms-on)
                export DISPLAY_QUIRK_DPMS_ON="true" ;;
       --quirk-dpms-suspend)
                export DISPLAY_QUIRK_DPMS_SUSPEND="true" ;;
       --quirk-radeon-off)
                export DISPLAY_QUIRK_RADEON_OFF="true" ;;
       --quirk-reset-brightness)
                export DISPLAY_QUIRK_RESET_BRIGHTNESS="true" ;;
       --quirk-s3-bios)
                export DISPLAY_QUIRK_S3_BIOS="true" ;;
       --quirk-s3-mode)
                export DISPLAY_QUIRK_S3_MODE="true" ;;
       --quirk-vbe-post)
                export DISPLAY_QUIRK_VBE_POST="true" ;;
       --quirk-vbemode-restore)
                export DISPLAY_QUIRK_VBEMODE_RESTORE="true" ;;
       --quirk-vbestate-restore)
                export DISPLAY_QUIRK_VBESTATE_RESTORE="true" ;;
       --quirk-vga-mode3)
                export DISPLAY_QUIRK_VGA_MODE_3="true" ;;

から、DISPLAY_QUIRK_VBE_POST DISPLAY_QUIRK_VBESTATE_RESTORE DISPLAY_QUIRK_VGA_MODE_3となる。

次に/etc/pm/config.d/の下に以下のような内容のsuspend.cfgというファイルを作る。*1

#!/bin/sh
#For VOSTRO1400
export DISPLAY_QUIRK_VBE_POST="true"
export DISPLAY_QUIRK_VBESTATE_RESTORE="true"
export DISPLAY_QUIRK_VGA_MODE_3="true"

以上でコマンドラインだけでなくGUIからのサスペンドもできるようになる。

*1:ファイル名は最後に~が付かなければ何でも良い。