特定の時間後にシステムを自動的にシャットダウンするにはどうすればよいですか?


回答:


49

ターミナルウィンドウを開き、次のように入力します。

sudo shutdown -h +60

60分を必要な分数に置き換えます。

詳細はこちら:

http://ubuntuforums.org/archive/index.php/t-473173.html http://www.linux.org/lessons/beginner/l5/lesson5a.html


2
-Pパラメータ(電源オフ)があまりにも良いアイデアのようです。
-htorque

shutdown + m 60は機能しません。エラーメッセージが表示され、無効な時間値があると表示されます。
NES

私はそれが奇妙だと思った...それは「+ m 60」であってはならず、「+ 60」であるべきである(または「-h +60」のようなものかもしれない。linux.org/lessons/beginner/l5/lesson5a.html
ダニエル・

「shutdown -P 1」-うまく機能し、1分でシステムをシャットダウンします。時間単位は不要です。
-n3rd

2
実際にそのsudo .....ルート権限が必要なため
シャーリッシュ・ハーワデ

8
  • gshutdownを使用できます gshutdownをインストールする
  • インストール後、アプリケーション→アクセサリ→GShutdownにあります。 代替テキスト
  • この方法もご覧ください。

誰がなぜ彼らは反対票を投じることができますか?
karthick87

2
私は反対票を投じなかった。ただし、Gshutdownはここではスムーズに動作しません。シャットダウンを選択すると、代わりにユーザーをログアウトしますか?
NES

私も、ユーザーをログアウトし、ラップトップをスリープモードにします
-lewis4u

2

一定の非アクティブ期間後にPCをシャットダウンするトピックはこのトピックにリダイレクトされるため、ここでこの問題について説明します。

私はこの問題を解決するために多くの時間を費やしたので、他の人にとって同じ問題を簡単にするために、それを共有することは有用であると思います。私はさまざまなプログラムを試しましたが、それらは私にとってはうまくいきませんでしたので、cronjobで短いスクリプトを使用するのが最良の解決策であることがわかりました。

最初に、時間指定シャットダウンの投稿を参照しました-30分後のシャットダウン

以下にコピーして、それを機能させるための改善点を説明します。

xprintidleをインストールします。このツールは、ユーザーのアイドル時間を提供します。

sudo apt-get install xprintidle

スクリプトautoshutdown.shを作成します。このスクリプトは、アイドル時間をチェックし、30分間アイドル状態の場合にシャットダウンするようコンピューターに指示します。

idle=$(xprintidle)

if [ $idle -gt 1800000 ]; then
    shutdown -h now
fi

このためにcronjobを作成して、システムが長時間アイドル状態になっていないかどうか、またアイドル状態が30分以上あるかどうかを時々チェックしてシャットダウンします。rootユーザー用にcronjobを作成する必要があることに注意してください。


このスクリプトを機能させるには、次のようないくつかの改善が必要です。

idle=`env DISPLAY=:0 su OUR_USER -c xprintidle 2>&1`

OUR_USER アイドル時間をチェックするために参照するユーザーです(rootユーザーではありません)

DISPLAY=:01つのデスクトップディスプレイに適しています(envコマンドを実行DISPLAYして状況を読み取ります)

スクリプトを実行する場合OUR_USER、上記の行を減らすことができます。

idle=`env DISPLAY=:0 xprintidle 2>&1`

このトピックはhttp://ubuntuforums.org/showthread.php?t=1069602で説明されています

スクリプトを実行する場合OUR_USERshutdownコマンドの前にsudo

sudo shutdown -h now

私のスクリプトは、cronファイルの行ごとにcronから実行されました。

*/5 * * * * /home/OUR_USER/autoshutdown.sh 
  • 5分ごと
  • OUR_USERは、参照するユーザーの以前のように置き換える必要があります。

スクリプトがルートで実行されない場合は、次の行を追加することを忘れないでください:

ALL ALL=(ALL) NOPASSWD: /sbin/shutdown 

sudoersファイルなので、シャットダウン・コマンドを実行するためのパスワードを必要としません。


2つの同様のディストリビューションLubuntu 12.04.4 RC LXLE 32ビットhttp://www.lxle.net/)でこのようなcronjobsを試しました

1つのシステムでは、ファイルに設定されているルートcronjobを使用してのみ機能します。

/ var / spool / cron / crontabs / root


警告

別の問題は、私のシステムのxprintidleが時々ランダムな値与え、時には論理的に増分することです。最終結果-最大アイドル値を30分に設定すると、システムは通常20分後にシャットダウンされます。犯人はxscreensaverであり、入力されたパラメーターによって設定されているように機能しないと思います。


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