acpiが利用できるので、「電源ボタンで停止(halt -p)」を実行するようにしてみました。 Vine Plusにacpidパッケージが用意されていますので、インストールします。
# apt-get update # apt-get install acpid
または、sourceforge.netからパッケージ acpidダウンロードします。
設定は /etc/acpi/events/の下にイベントに対応した設定を書いたファイルを用意すればよいです。 電源ボタンを押した際に halt -p を実行するには、例えば /etc/acpi/events/power_off と言うファイルに以下のように書きます。
event=button/power * action=/sbin/halt -p
event=行は/var/log/acpid に表示される内容をみながら決めます。 action=行は実行するコマンドか、スクリプトのファイル名を指定します。
cpufreqとacpidを組み合わせると、ふたを閉じた際にpowersaveにすることができます。 また、ふたを開けた際にperformanceに戻すこともできます。 /etc/acpi/actions/lid_down.shと言うシェルスクリプを用意し、 /etc/acpi/events/lid_down に以下のように記述します。
event=button/lid action=/etc/acpi/actions/lid_down.sh %e
ふたの開け閉めの判定はbutton/lidが呼ばれた回数が偶数か奇数かで判定しています。 何かの拍子にずれた場合、誤動作するかも知れません。
同様に、ACアダプタが接続されているかどうかで、切り替えることもできます。 /var/log/acpidのイベントの第4引数が 00000000 ならばACアダプタ無しで、 00000001ならばACアダプタ有りと言うことがわかります。
/etc/acpi/actions/ac_adapter.shを用意し、 /etc/acpi/events/ac_adapter に以下のように書きます。
event=ac_adapter action=/etc/acpi/actions/ac_adapter.sh %e
注! ふたの開閉とACアダプタは互いに連動していません。 従って、ふたを閉めてからACアダプタを刺すと、performanceになります。 イベント駆動式ですから、最後に発生したイベントに依存します。