Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

10.4. システムのシャットダウン、サスペンド、休止状態

Red Hat Enterprise Linux 7 では、systemctl ユーティリティーがこれまでのバージョンの Red Hat Enterprise Linux システムで使用されていた多くの電源管理コマンドに置き換わっています。表10.8「電源管理コマンドと systemctl の比較」 に表示されているコマンドは互換性の理由から現在も利用可能ですが、可能な場合は systemctl の使用が推奨されます。

表10.8 電源管理コマンドと systemctl の比較

古いコマンド新しいコマンド詳細
haltsystemctl haltシステムを停止します。
poweroffsystemctl poweroffシステムの電源を切ります。
rebootsystemctl rebootシステムを再起動します。
pm-suspendsystemctl suspendシステムをサスペンドします。
pm-hibernatesystemctl hibernateシステムを休止状態にします。
pm-suspend-hybridsystemctl hybrid-sleepシステムを休止状態にしてサスペンドします。

10.4.1. システムのシャットダウン

systemctl ユーティリティーは、システムをシャットダウンするためのコマンドを提供します。ただし、従来の shutdown コマンドもサポートされます。shutdown コマンドは、systemctl ユーティリティーを呼び出してシャットダウンを実行しますが、time 引数もサポートするという利点があります。これは、計画メンテナンスにとりわけ役立ち、ユーザーがシステムシャットダウンの予定に関する警告に対応するための時間をより多く確保することができます。シャットダウンをキャンセルするオプションがあることも利点です。

systemctl コマンドの使用

システムをシャットダウンしてマシンの電源を切るには、root でシェルプロンプトに以下を入力します。
systemctl poweroff
マシンの電源を切らずにシステムをシャットダウンして停止するには、root で以下のコマンドを実行します。
systemctl halt
デフォルトでは、このコマンドはどちらも、現在システムにログインしているすべてのユーザーに systemd が通知メッセージを送信します。systemd がこのメッセージを送信しないようにするには、コマンドに --no-wall オプションを付けて実行します。例を示します。
systemctl --no-wall poweroff

shutdown コマンドの使用

特定の時間にシステムをシャットダウンしてマシンの電源を切るには、root で以下のフォーマットでコマンドを使用します。
shutdown --poweroff hh:mm
ここで、hh:mm は 24 時間クロックフォーマットの時間になります。新たなログインを防ぐために、システムがシャットダウンされる 5 分前に /run/nologin ファイルが作成されます。time 引数が使用される場合は、オプションのメッセージである ウォールメッセージ をコマンドに追加することができます。
マシンの電源を切らずにシステムを一定の遅延後にシャットダウンし、停止するには、root で以下のフォーマットでコマンドを使用します。
shutdown --halt +m
ここで、+m は遅延時間 (分単位) です。now キーワードは +0 のエイリアスです。
保留中のシャットダウンは、以下のように root ユーザーでキャンセルできます。
shutdown -c
追加のコマンドオプションについては、man ページの shutdown(8) を参照してください。

10.4.2. システムの再起動

システムを再起動するには、root で以下のコマンドを実行します。
systemctl reboot
デフォルトでは、このコマンドは、現在システムにログインしているすべてのユーザーに systemd が通知メッセージを送信します。systemd がこのメッセージを送信しないようにするには、コマンドに --no-wall オプションを付けて実行します。
systemctl --no-wall reboot

10.4.3. システムの一時停止

システムをサスペンドするには、root でシェルプロンプトに以下を入力します。
systemctl suspend
このコマンドは、システムの状態を RAM に保存し、RAM モジュールを除いてマシンのほとんどのデバイスの電源を切ります。マシンの電源を戻すと、システムは再起動せずに RAM からその状態を復元します。システムの状態がハードディスク上ではなく RAM に保存されるので、システムのサスペンドモードからの復元は、休止状態からの復元よりも大幅に速くなります。ただし結果として、システムをサスペンドした状態は、停電に対して脆弱となります。
システムを休止状態にする方法は 「システムの休止状態」 を参照してください。

10.4.4. システムの休止状態

システムを休止状態にするには、root でシェルプロンプトに以下を入力します。
systemctl hibernate
このコマンドは、システムの状態をハードディスクドライブに保存し、マシンの電源を切ります。マシンの電源を戻すと、システムは再起動せずに保存されたデータからその状態を復元します。システムの状態が RAM ではなくハードディスク上に保存されるので、マシンは RAM モジュールに電力を維持する必要がありません。ただしその結果、システムの休止状態からの復元は、サスペンドモードからの復元よりも大幅に遅くなります。
システムを休止状態にしてサスペンドするには、root で以下のコマンドを実行します。
systemctl hybrid-sleep
システムをサスペンドする方法は 「システムの一時停止」 を参照してください。