複数の Linux シャットダウン スケジュールとその動作

複数の Linux シャットダウン スケジュールとその動作

シャットダウンを複数回スケジュールした場合、動作はどうなりますか? 例:

shutdown +20
shutdown +25

2 番目のシャットダウン コマンドは最初のコマンドを上書きしますか?

また、shutdown -cを使用してシャットダウンをキャンセルするとどうなりますか?例えば

shutdown +20
shutdown +25
shutdown -c

すべてのシャットダウンスケジュールがキャンセルされるのでしょうか、それとも最後のものだけでしょうか?

答え1

提供されている「シャットダウン」コマンドを使用している場合は、システムド:

  • 集中管理シャットダウンタイマーが1つあります(システムdログインサービス)。シャットダウンを複数回スケジュールしようとすると、自動的にキャンセルされ、タイムアウトとアクションが新しいパラメータに置き換えられます。

  • shutdown +XXsystemd-logind の ScheduleShutdown() を呼び出し、タイマーを設定または調整します。

  • shutdown -csystemd-logind の CancelScheduledShutdown() を呼び出し、タイマーを無効にします。

を使用している場合はシャットダウンLinux sysvinit からのコマンド:

  • このプログラムは pid ファイルを使用して、シャットダウンが 1 回だけスケジュールされるようにします。2 回実行しようとすると、「シャットダウン: 既に実行中」というメッセージが表示されます。(追跡に使用する pid ファイルを誤って削除しない限り)。

  • shutdown +XXすでにバックグラウンドで実行中の「キューに入れられたシャットダウン」プロセスが見つかった場合、新しい「キューに入れられたシャットダウン」プロセスの開始を拒否します (/var/run/shutdown.pid に保存されている PID に基づいて)。

  • shutdown -c複数のプロセスを起動できないはずであるという前提の下、正確に 1 つの「キューに入れられたシャットダウン」プロセス (その PID は、shutdown.pid から読み取られます) を強制終了します。

関連情報