シャットダウン
Shutdown
シャットダウンは、OSやサービスに終了を指示し、必要な後始末を行って稼働を停止する操作です。未保存の文書を必ず自動保存する機能ではありません。利用者の保存と、OSが行う書き込みの完了は区別しましょう。
🐾 猫で例えると?
体を寄せて眠る茶トラとアメショ。この姿から、「遊びを終え、おもちゃを片付けてから寝床へ行く」順番を想像すると、シャットダウンの手順に似ています。PCも、アプリやOSの後始末を進めてから動作を止めます。編集中の文書は利用者が保存しておく必要があります。
💻 IT現場における「シャットダウン」とは?
現場において「シャットダウン」は、単なる「電源ボタンをポチッと押すこと」ではなく、システムを安全な状態に着地させるための「グレースフル・シャットダウン(Graceful Shutdown)」を指します。
サーバーやアプリケーションを稼働させたままいきなり電源を抜く(強制終了・電源断)と、書き込み途中のデータが破損したり、データベースがクラッシュしたりする危険があります。そのため、現在通信中のユーザーがいないか確認し、処理中のタスクを最後まで終わらせ、メモリ上のデータをディスクに同期(Sync)してから電源を落とすという、繊細な手順がプログラム制御によって行われています。
⚠️ シャットダウンの仕組みとプロセスの終了
終了の通知方法はOSやアプリで異なります。LinuxのサービスではSIGTERMなど、Windowsでは専用の通知やサービス制御が使われます。応答を待つ時間には上限があるため、長い処理を必ず最後まで待ってもらえるとは限りません。
コマンドラインからのシャットダウン
次はシャットダウン操作の例です。未保存の作業、接続利用者、バックアップや更新中の処理を確認してから実行します。共用サーバーでは利用者への周知と停止手順が必要です。
# Windows:即時シャットダウン
shutdown /s /t 0
# Linux(shutdownコマンド対応環境):10分後に予約
sudo shutdown +10 "メンテナンスのため停止します"
# Linux:予約を取り消す場合
sudo shutdown -c スクリプトやプログラムからOSのシャットダウン処理を呼び出すことも可能ですが、管理者権限が必要になります。システム更新の自動化や夜間のバッチ処理終了後などで重宝されるコマンドです。
🛠️ 「シャットダウン」を賢く使うためのポイント
現場でPCやサーバーを運用する際の、終了処理に関する注意点は以下の通りです。
- 強制終了との違いを理解する: 電源ボタンの長押しやプラグを抜く操作では、書き込み途中のデータを失うおそれがあります。通常はOSの終了操作を使い、応答しない場合も、その機器の案内に従って対処します。
- スリープや再起動との使い分け: すぐに作業を再開したい場合はメモリに通電し続ける「スリープ」、システムの設定をリセットして不具合を直したい場合は「再起動」、長期間使わない場合やパーツを交換する場合は「シャットダウン」と、目的に応じて使い分けます。
- 再起動と電源断を区別: Windowsの高速スタートアップではカーネル状態を保存するため、OSの再起動と同じにはなりません。トラブルの切り分けには再起動を使います。内部部品を扱う場合は、さらに製品の手順に従って電源ケーブルやバッテリーを処置します。
遊び終わった猫が寝床に向かうように、PCにも終了までの手順があります。文書を保存してアプリを閉じ、OSの終了操作を使いましょう。電源を切る操作と、編集中の内容を保存する操作は別だと覚えておくと安心です。