コンピュータはどのようにサスペンドしますか?


9

10.10でサスペンドがどのように機能するかを理解しようとしています。

http://git.webconverger.org/?p=home.git;a=blob;f=.bashrc;h=8ba57b877e31a03c5f0b1675b42f747d81dd31ad;hb=HEAD#l31

私は alias suspend='sudo /etc/acpi/sleep.sh && sudo alsactl init 0

alsactlビットは時々正しく、サスペンドから出ていない再initは私のサウンドカードです。

その後:

/etc/acpi/sleep.sh-> /usr/sbin/pm-suspend-> /usr/lib/pm-utils/bin/pm-action->/usr/lib/pm-utils/pm-functions

アイロニーは/usr/lib/pm-utils/bin/pm-action「単純な中断スクリプト」であると主張しています。

それがどのように機能するかまだわかりません。s2ram以前は直接使っていたと思います。


私はあまり説明していませんがalsactl、独自のスクリプトにコマンドを入れる/etc/acpi/resume.d/と、オンウェイクで実行されます。
Oli

更新:私はsudo systemctl suspend今使っています。
ヘンドリー2014

回答:


10

gnome-power-managerこのツールは、一時停止ボタンイベント、およびスポーンをリッスンpm-suspendpm-suspend動作方法についての詳細は、man pm-suspendコマンド出力で確認できます。クイックバージョン:

  1. /etc/pm/config.d 環境変数を定義するファイルをスキャンします。
  2. /etc/pm/sleep.dおよびの各スクリプトは/usr/lib/pm-utils/sleep.d、「suspend」引数を使用して順番に呼び出されます。
  3. システムは、定義されたインターフェースモジュールを介してスリープ状態になります。デフォルトでは、これはカーネルサスペンドインターフェイスですecho -n "mem" >/sys/power/state。定義されている/usr/lib/pm-utils/pm-functions場所を参照してくださいdo_suspend
  4. システムが起動します。
  5. /etc/pm/sleep.dおよびの各スクリプトは/usr/lib/pm-utils/sleep.d、「再開」引数を使用して逆の順序で呼び出されます。

スタックにスクリプトを追加する必要がある場合は、追加/etc/pm/sleep.dして他のスクリプトと競合しない名前を付け、「suspend」/「resume」引数を処理することを確認することをお勧めします。

デバッグについて/var/log/pm-suspend.logは、テスト方法の詳細が記載されているmanページを参照してください。


興味津々ですが、キースに感謝しますが、ステップ3で「カーネルサスペンド」をトリガーするコマンドは正確に何ですか。
ヘンドリー

私もその詳細を含むように更新しました。
キースクック
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.