シャットダウンする前にスクリプトを実行する


21

コンピューターをシャットダウンするとき、オフィスを出る前にやらなければならない保留中のタスクをいくつか表示したいです...これらのタスクを管理するローカルアプリケーションを実行しました。実行されたアプリ。


将来のユーザーに役立つ可能性があります:askubuntu.com/a/747556/295286
Sergiy Kolodyazhnyy

回答:


7

ファイル/etc/gdm/PostSession/Defaultexit 0行の前にコマンドを追加できます。


「ログアウト」オプションに移動すると、問題なく実行されますが、シャットダウンを押すと、ほぼ瞬時にUbuntuの紫色のログアウト画面が表示され、スクリプトが実行されます(画面に5つの小さなボールのあるUbuntuのロゴが表示されます)。(睡眠20でテスト)。
-juanefren

「本当にシャットダウンしますか」ダイアログは次の場所にあります:/ usr / lib / indicator-session / gtk-logout-helperおよびindicator-sessionパッケージの一部はC / C ++で書かれているため、編集。いくつかのgnome-guruメーリングリストでもっと運がいいかもしれません;)
LassePoulsen

6

これを行うには、/ etc / rc0.d(シャットダウン用)および/etc/rc6.d(再起動用)にスクリプトを作成します。これを行うには、次を実行します。

gksu gedit /etc/rc0.d/K01mycustomscript

テキストエディターでシャットダウンスクリプトを編集し、次を実行します。

sudo chmod +x /etc/rc0.d/K01mycustomscript

また、再起動時に実行する場合は、次を実行します。

sudo cp /etc/rc0.d/K01mycustomscript /etc/rc6.d/K01mycustomscript

ソース:このフォーラムスレッド


彼の説明から、彼はグラフィカルアプリを起動したいように思えるので、xserverにアクセスする必要があります。この場合、init-scriptsを使用しても機能しません。
sepp2k

1
うん... @ sepp2kが言うように、スクリプトはxserverの外で実行されている:(
juanefren

4

私にはsuperuser.comに対する質問のように聞こえます。とにかく、いくつかのグーグル検索の、ログアウト時にスクリプトを実行する方法を見つけましたか?これは、スクリプトを$ HOME / .bash_logoutに追加するよう指示しています。

うまくいかない場合は、追加します

$HOME/.bash_logout

/ etc / gdm / PostSession / Defaultに追加して、ログアウトスクリプトを適切に実行します。

とにかくシャットダウン前にユーザーがログオフされているように見えるため、これは両方のベースをカバーするはずです。


1
彼はおそらくスクリプトを毎回実行したくないので、bashからログアウトします(つまり、端末ウィンドウを閉じるたびに)。コマンドを.bash_logoutに書き込むことは良い考えではないと思います。しかし、それをPostSession / Defaultに書き込むのは良い考えのようです。
sepp2k

既にこのファイルがありますが、機能していないようです(スリープ状態に20を設定し、シャットダウンするのを待ちませんでした。)
juanefren

.bash_logoutは、ターミナルを閉じても実行されません。ターミナルログインセッションからログアウトした場合(つまり、realTTYからログアウトした場合)のみ実行され、gnomeからログアウトした場合は実行されません。
ラッセポールセン

なぜこれがスーパーユーザーにとって質問になるのでしょうか?質問がUbuntuに関するものである場合、それは話題になっています。
NN

2

./app-to-run && sudo shutdown -h now実行するアプリが実行されたら、コンピューターをシャットダウンする必要があります。


1
これは非常に粗雑なシャットダウンになります。代わりに、デスクトップシャットダウンスクリプトを呼び出します。
txwikinger

app-to-runが十分に長い場合、sudoはユーザーにパスワードの入力を要求する場合があります。したがって、シャットダウンすることはありません。
サンブ

1

Tommy Brunnとほぼ同じ答えですが、rootパスワードを求められてハングするリスクはありません:

sudo sh -c "./app-to-run; shutdown -h now"
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.