私はネットブックの Debian システムを、バッテリー残量が少なくなるとシャットダウンするように設定しました。問題は、シャットダウンすると実行中のアプリケーションがすべて終了し、作業中のドキュメントを保存する機会がまったく与えられないことです。
シャットダウンが開始される前に、開いているすべてのアプリケーションを「穏やかに」閉じるスクリプトを作成したいのですが、Gnome で実行中のすべてのアプリケーションに「閉じる」メッセージをブロードキャストする方法が見つかりません。方法はありますか?
ありがとう。
編集: 私のネットブックでは休止状態が機能しないため、代替ソリューションとして使用することはできません。
答え1
シャットダウンは、開いているすべてのアプリケーションを穏やかに「閉じる」(SIGTERM)し、正常に終了する機会を与えます。その後、しばらく経ってもプロセスが応答しない場合は、ハードキル(SIGKILL)を実行します。近いファイル、または、もっと重要なのはデータベースです。
シャットダウンは自律的な手順です。ユーザー入力に応答することは想定されていません。したがって、ユーザーに事前に保存するオプションを与えることはできません。これが、emacs と vi(m) の両方にリカバリ ファイルがある理由です。アプリケーションに自動保存機能があるかどうかを確認してください。ほとんどの場合、古い格言「早めに保存し、頻繁に保存する」が適用されます。
電源設定を変更してシステムを改善することを考えたことはありますか?冬眠する? これにより、次回の起動時にシステムの状態 (実行中のプログラムを含む) が保存されます。
答え2
シャットダウン前に現在のセッションを閉じるように gnome に指示することができます。次のようになります:
gnome-session-quit --logout --no-prompt
shutdown -h now
コマンド構文はgnomeのバージョンに応じて変わることがあります(例gnome-session-quit
:新しいの名前gnome-session-save
)。
--no-prompt
ユーザーの確認なしに実行中のアプリケーションを強制終了します。