46.

shutdown コマンド完全ガイド(Linux / Windows / systemd の使い分け)

編集
この記事の要点
  • Linux 即時停止: sudo shutdown -h now または sudo poweroff
  • Linux 再起動: sudo shutdown -r now または sudo reboot
  • 時間指定: sudo shutdown -h +30(30 分後)/ sudo shutdown -h 23:00(時刻指定)
  • Windows: shutdown /s /t 0(停止)/ shutdown /r /t 0(再起動)/ shutdown /h(休止)
  • キャンセル: Linux sudo shutdown -c / Windows shutdown /a

Linux のシャットダウン / 再起動コマンド

Linux にはシャットダウン関連のコマンドが複数あり、用途によって使い分けます:

コマンド動作備考
shutdown -h now即時停止全プロセスへ SIGTERM 後、停止
shutdown -r now即時再起動
shutdown -h +1010 分後に停止ログインユーザーに警告
shutdown -h 23:0023 時に停止絶対時刻
shutdown -c予定キャンセル
poweroff電源 OFFshutdown -h now のエイリアス相当
halt停止(電源切れない可)古い PC では電源切れない
reboot再起動shutdown -r now のエイリアス

shutdown コマンドの基本構文

shutdown [オプション] [時間] [メッセージ]

# 主なオプション
#   -h  停止 (halt/poweroff)
#   -r  再起動
#   -k  実際は停止せず警告だけ送信(fake shutdown)
#   -c  予定済の shutdown をキャンセル
#   -P  poweroff(電源 OFF、--halt と区別したいとき)

# 時間指定
#   now       即時
#   +N        N 分後
#   hh:mm     絶対時刻

実用例

# 即時シャットダウン
sudo shutdown -h now

# 30 分後にシャットダウン、メッセージ付き
sudo shutdown -h +30 "システムメンテナンスを 30 分後に実施します"

# 今夜 23:00 に再起動
sudo shutdown -r 23:00

# 予定済シャットダウンをキャンセル
sudo shutdown -c

# シャットダウンせず警告だけテスト
sudo shutdown -k +5 "テスト警告です"

# 全ユーザーへの警告メッセージ
sudo wall "5 分後に再起動します"

systemd 系コマンド

CentOS 7+ / Ubuntu 16.04+ / Debian 8+ など systemd 採用ディストリでは systemctl も使えます:

# 即時停止
sudo systemctl poweroff

# 即時再起動
sudo systemctl reboot

# サスペンド(メモリに状態保持)
sudo systemctl suspend

# ハイバネート(ディスクに状態保存)
sudo systemctl hibernate

# レスキューモードへ移行
sudo systemctl rescue

# 終了状態の確認
systemctl status

Windows のシャットダウンコマンド

Windows のコマンドプロンプト / PowerShell から:

コマンド動作
shutdown /s /t 0即時シャットダウン
shutdown /r /t 0即時再起動
shutdown /h休止状態 (Hibernate)
shutdown /lログオフ
shutdown /s /t 60010 分後にシャットダウン
shutdown /a予定キャンセル
shutdown /r /o /t 0再起動して詳細オプション
shutdown /g /t 0再起動後、再ログオン時にアプリ復元

Windows: リモートシャットダウン

# リモート PC のシャットダウン
shutdown /m \\PC-NAME /s /t 0 /c "Maintenance"

# リモート PC の再起動(管理者権限・ファイアウォール開放必要)
shutdown /m \\PC-NAME /r /t 60

# GUI からリモート(ダイアログ起動)
shutdown /i

# PowerShell ネイティブ
Stop-Computer -ComputerName PC-NAME -Force
Restart-Computer -ComputerName PC-NAME -Force

# 認証情報付き
$cred = Get-Credential
Restart-Computer -ComputerName PC-NAME -Credential $cred -Force

shutdown と poweroff / halt / reboot の違い

コマンド挙動電源
shutdown -hサービス停止 → 停止OFF(ACPI 対応 PC)
poweroffshutdown -h now と同等OFF
haltCPU 停止古い PC は OFF にならない
rebootshutdown -r now と同等再起動
init 0ランレベル 0(停止)OFF(SysV 系)
init 6ランレベル 6(再起動)再起動

ログイン中ユーザーへの通知

サーバーに他ユーザーがログインしている場合、いきなり落とすとデータ消失のリスクがあります:

# 現在ログイン中ユーザー確認
who
w

# 全員へメッセージ
sudo wall "10 分後に再起動します。作業を保存してください"

# 10 分後に再起動(自動でログイン中ユーザーへ警告される)
sudo shutdown -r +10 "メンテナンス再起動"

シャットダウン中の処理(落ちる前にやっておく)

# 重要サービスの停止確認
sudo systemctl stop nginx
sudo systemctl stop mysql

# ファイルシステム同期(古い PC で安全)
sudo sync; sudo sync

# DB のフラッシュ(MySQL)
mysql -uroot -p -e "FLUSH TABLES WITH READ LOCK;"

# それからシャットダウン
sudo shutdown -h now

FAQ

Q: shutdown コマンドが「command not found」
A: 一般ユーザーでは PATH に /sbin が入っていないことがあります。sudo /sbin/shutdown ... または sudo で実行。

Q: 停止と再起動を間違えた、取り消したい
A: sudo shutdown -c(Linux)または shutdown /a(Windows)でキャンセル可能。ただし shutdown -h now のような即時実行は取り消せません。

Q: Wake on LAN との関係
A: shutdown -h は ACPI S5(ソフト OFF)まで落とすので、WoL マジックパケットで起こせる状態。poweroff も同等。

Q: クラウド VM のシャットダウン
A: AWS EC2 / GCP / Azure では shutdown -h now でインスタンス停止状態になります(課金停止、ストレージ課金は継続)。再起動なら reboot

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. ls ファイル/ディレクトリ一覧表示
  2. sudo ユーザー指定
  3. cron/crontab ジョブの自動実行と登録方法
  4. wget http通信によるファイルダウンロード
  5. rm ファイル/ディレクトリ削除
  6. pwd カレントディレクトリの表示
  7. cd ディレクトリの移動
  8. ./configure
  9. make
  10. make install
  11. unzip ファイルの解凍
  12. mv ファイル/ディレクトリの移動および名称変更
  13. mkdir ディレクトリの作成
  14. touch 空ファイルの新規作成
  15. vi テキストディタの使用
  16. find ファイル/ディレクトリ検索
  17. grep 文字列の検索
  18. tail ファイルの末尾表示
  19. curl HTTP通信によるリクエスト
  20. nslookup ドメインのIP解決
  21. apt update パッケージリストの情報を更新
  22. apt upgrade パッケージの更新
  23. ln リンク/ショートカットの作成と削除
  24. rsync ファイル/ディレクトリの同期
  25. ssh リモートとの暗号化通信
  26. scp sshを利用したファイルのコピー
  27. unzip zip ファイルを解凍する
  28. cp ファイル/ディレクトリのコピー
  29. diffファイルの差分抽出
  30. fdisk ハードディスクに対する操作
  31. lsblk デバイスをツリー状で表示する
  32. kill プロセスを終了させる
  33. zip ファイルやディレクトリをzip形式に圧縮する
  34. host ドメインからIPアドレスを確認
  35. chmod 権限の変更
  36. ip IPアドレスの確認
  37. chown ファイル/ディレクトリ所有者の変更
  38. chgrp ファイル/ディレクトリのグループ情報の変更
  39. nohupと'&' プログラムのバックグラウンド実行(ssh接続時)
  40. lsof 開いているポート番号の確認
  41. tar ファイルの圧縮と解凍
  42. file ファイルの種類を表示
  43. cat ファイルの中身を表示
  44. head ファイルの先頭部分を表示
  45. wc 行数/単語数/文字数を確認
  46. shutdown システムのシャットダウンと再起動
  47. ps プロセスの確認
  48. which コマンドの絶対パスを調べる
  49. yum RedHat系ディストリビューションの管理
  50. mount ファイルシステムのマウント
  51. 特定フォルダ以下の特定拡張子のファイルを再帰的に削除する方法
  52. 特定のフォルダとそのサブフォルダ内にある特定のファイル名のファイルを再帰的に削除