この記事のポイント
・shutdown -h +時間 "メッセージ" でログイン中の全ユーザにブロードキャストできる
・任意のタイミングで wall コマンドを使えばシャットダウンと切り離して通知できる
・systemd採用ディストロでも shutdown / wall は標準で利用可能
・本番サーバーの停止通知はメッセージ+時間指定の2点をワンライナーで定型化する
業務サーバーや共用開発機を停止するとき、誰かが裏で作業していてセッションごと切ってしまうのは避けたいところです。
この記事では、システム終了時に接続ユーザにメッセージを送る方法を、shutdownコマンドのブロードキャスト機能とwallコマンドの両面から解説します。RHEL 9 / Rocky Linux 9 / Ubuntu 24.04 LTSで動作確認済みです。
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
なぜシステム終了時に接続ユーザへのメッセージ通知が必要なのか
サーバーをshutdownすると、Linuxは標準で「The system is going down for system halt NOW!」というブロードキャストメッセージをログイン中の全ユーザに流します。ただしこの定型文だけでは、なぜ止めるのか・あと何分で止まるのかが伝わりません。実務では「定期メンテのため23:00停止」「ストレージ交換のため5分後halt」のように、理由と猶予時間をセットで通知するのが鉄則です。これをサボると、リモートでviで編集中の同僚のセッションが突然切れ、未保存ファイルを失う事故につながります。
shutdownコマンドにはこのメッセージを差し替える引数が用意されていて、わざわざ事前にチャットへ書き込まなくても、ログイン中の全ユーザのターミナルに直接通知を流せます。
shutdownコマンドでメッセージを送る基本的な使い方
shutdownコマンドの構文は「shutdown オプション 時間指定 メッセージ」の3要素です。時間指定の後に書いた文字列が、そのままブロードキャストメッセージとして全ターミナルに表示されます。1. 3分後に停止+メッセージを表示する
最も使う形が、数分後の停止を予告するパターンです。# 3分後にシステム停止+メッセージ送信 [root@Tiger ~]# shutdown -h +3 "Goodbye! メンテナンスのため停止します" Broadcast message from root@Tiger (pts/0) (Sat Jun 12 20:42:39 2026): Goodbye! メンテナンスのため停止します The system is going DOWN for system halt in 3 minutes!
2. 時刻指定で停止+メッセージを表示する
「23:00きっかりに停止」のように絶対時刻を指定したい場合は、+分の代わりに HH:MM 形式を渡します。# 23:00に停止予約+メッセージ [root@Tiger ~]# shutdown -h 23:00 "本日23:00にメンテナンス停止します" Shutdown scheduled for Sat 2026-06-12 23:00:00 JST, use 'shutdown -c' to cancel.
3. 即時停止+メッセージを表示する
障害対応で「今すぐ止める」場合は「now」を指定します。猶予はゼロなのでメッセージは「お知らせ」ではなく「事後通知」になります。# 今すぐ停止+メッセージ [root@Tiger ~]# shutdown -h now "緊急停止します。後で連絡します"
shutdownを使わずに任意メッセージを送るwallコマンド
「停止はしないが事前にアナウンスだけ流したい」「停止5分前にもう一度念押ししたい」というケースで重宝するのが wall コマンド(write all)です。# 全ユーザにメッセージを送信 [root@Tiger ~]# wall "15分後にサーバーを停止します。作業を保存してください" Broadcast message from root@Tiger (pts/0) (Sat Jun 12 20:45:00 2026): 15分後にサーバーを停止します。作業を保存してください
shutdown / wall 早見表
| やりたいこと | コマンド |
|---|---|
| 3分後に停止+メッセージ送信 | shutdown -h +3 "メッセージ" |
| 23:00に停止+メッセージ送信 | shutdown -h 23:00 "メッセージ" |
| 今すぐ停止+メッセージ送信 | shutdown -h now "メッセージ" |
| 3分後に再起動+メッセージ送信 | shutdown -r +3 "メッセージ" |
| 停止予約をキャンセル | shutdown -c "キャンセル理由" |
| 停止せずに全ユーザへ通知 | wall "メッセージ" |
| ファイルの内容をメッセージとして送信 | wall < /tmp/notice.txt |
応用・実務Tips
1. メッセージを受け取れる対象を確認する
shutdown / wall のブロードキャストはターミナルへ書き込み許可(mesg y)を出しているユーザにしか届きません。受け取れているか確認したい場合は、対象ユーザのターミナルで mesg コマンドを実行します。# 現在の設定確認 [pakira@Tiger ~]$ mesg is y # 一時的にメッセージ受信を拒否 [pakira@Tiger ~]$ mesg n
2. 停止予約をキャンセルする
shutdownで予約した停止は -c でキャンセルできます。キャンセル時にもメッセージを添えると親切です。# 予約済みshutdownのキャンセル+メッセージ [root@Tiger ~]# shutdown -c "停止予約をキャンセルしました。作業を継続してください"
3. ファイルの内容を一斉送信する
長いアナウンスはwallで標準入力リダイレクトを使うと、何度も同じ文章を流せます。# 定型文をテキストにしておく [root@Tiger ~]# cat /tmp/maint_notice.txt 本日23:00より、サーバーメンテナンスのため停止します。 作業中のファイルは22:55までに保存してください。 お問い合わせは管理者まで。 # 一斉送信 [root@Tiger ~]# wall < /tmp/maint_notice.txt
「Operation not permitted」が出た時の対処法
wall は一般ユーザでも実行できますが、shutdown はroot権限が必要です。一般ユーザで shutdown を実行すると以下のエラーになります。[pakira@Tiger ~]$ shutdown -h +3 "Goodbye!" Failed to set wall message, ignoring: Interactive authentication required. Failed to call ScheduleShutdown in logind, proceeding with /sbin/shutdown: Interactive authentication required. Failed to open /dev/initctl: Permission denied Failed to talk to init, no shutdown.
shutdown / wall とsystemdの関係
RHEL 7以降のsystemd採用ディストロでは、shutdown / halt / reboot / poweroff は内部的に systemctl のラッパーに置き換わっています。動作としては従来通りで、後方互換が保たれています。shutdownコマンドの実体を確認すると、systemctlへのシンボリックリンクになっていることが分かります。
# shutdownの実体を確認 [root@Tiger ~]# ls -l /sbin/shutdown lrwxrwxrwx. 1 root root 16 Apr 1 10:00 /sbin/shutdown -> ../bin/systemctl
本記事のまとめ
システム終了時に接続ユーザにメッセージを送る運用は、サーバー管理の基本マナーです。・shutdown -h +時間 "メッセージ":停止予約とブロードキャストを同時実行
・shutdown -c "メッセージ":停止予約のキャンセル通知
・wall "メッセージ":停止せずに任意のタイミングで一斉通知
・mesg y:受信側でブロードキャストを許可
本番サーバーの停止通知では、shutdownの一発予約だけに頼らず、wallで複数回リマインドを流すと利用者の信頼を失わずに済みます。Slack / メール / wall の3点併用が安全運用の鉄則です。
■ 関連記事
システムを指定時間に終了する
システムをすぐに終了する
システムを停止する
システムをすぐに再起動する
システムの再起動を高速に行う
指定時間後にシステムを再起動する
shutdownコマンドの詳細はこちら
rebootコマンドの詳細はこちら
haltコマンドの詳細はこちら
syncコマンドの詳細はこちら
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:パーティションテーブルを表示する(fdisk -l)
- 前のページへ:システムを指定時間後に終了する(shutdown -h +N)
- この記事の属するカテゴリ:Linuxtips・システム管理へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます