シャットダウンと再起動を行うコマンド
Linuxでは電源オフは「poweroff」再起動は「reboot」、スリープは「systemctl suspend」休止状態は「systemctl hibernate」を利用します。
Linuxの起動停止を行うコマンドは複数あります。停止や起動に関わらず挙動が重複しているコマンドはたくさんあります。これはLinuxの歴史によるもので、過去に使われていたコマンドが現在でも使えるようにしているからです。
linuxで使われるシャットダウンコマンドの一覧です。
shutdown -h systemctl halt (halt) systemctl poweroff (poweroff : init 0)
現在のディストリビューションでは電源管理コマンドは全てsystemctlを介してsystemdにより行われます。実際にコマンドのパスをwhichコマンドとパスの詳細をlsコマンドで調べてみると全てsystemctlにリンクされていることが分かります。
シャットダウンコマンドはsystemctlに送られる
systemdは現在主流のinitプロセスで以前はSysV initが使われていました。haltやpoweroffはinitで使われていたコマンドでsystemdではsystemctlコマンドを使ってsystemctl halt、systemctl poweroffを使います。しかし、haltやpoweroffコマンドもそのまま使えるようにリンクを張っているのでどちらも使えます。
shutdownコマンドはunixで使われているコマンドでLinuxでも同じコマンドを使えます。shutdownコマンドを使うことが推奨されていることがありますが、shutdownコマンドでもpoweroffでも動作は同じようです。むしろshutdownコマンドは「shutdown -h now
」などのように長いコマンドを打つ分面倒なのでpoweroffを使えばよいです。
haltコマンドではPCの電源は落ちません。haltでは実行されているプロセスを全て停止した後、CPUの電源を切りますが、PC全体の電源は切りません。そのためシステムは停止されていますが、画面の電源はついたままになります。haltは即時システムを停止するときに使いますが、通常は使わないほうが良いです。
shutdownコマンドのオプション
shutdownコマンドのオプションでshutdown -h というのはよく見ますが、実はshutdown、shutdown -h、shutdown -Pは全て同じ動作になります。manでshutdownを見るとshutdownはオプションを指定しない場合shutdown -P (マシンの電源を切る)をデフォルトで指定すると書いてあります。またshutdown -hも同じくshutdown -Pと同じになります。そのため、電源を切るだけならshutdownだけでよいということですね。shutdownだけでは電源オフは1分後に行われるのですぐに停止したい場合は+0またはnowを使いましょう。
shutdown -r systemctl reboot (reboot:init 6)
コメントを残す