一般的な再起動コマンド
reboot
最もシンプルな方法で、即座にシステムを再起動します。
時間およびメッセージを指定することは出来ない
# reboot
shutdown -r now
shutdown
コマンドに -r
オプションを付けることで、システムをすぐに再起動できます。
# shutdown -r now
shutdown -r +5
5分後にシステムを再起動したい場合は、+5
のように時間を指定します。
# shutdown -r +5
shutdown -r 22:00
指定した時刻(例: 22:00)に再起動をスケジュールすることも可能です。
# shutdown -r 22:00
shutdown -r +5 "再起動します"
5分後にシステムを再起動し、再起動理由としてメッセージを表示する場合のコマンドです。
# shutdown -r +5 "再起動します"
shutdown -r 22:00 "再起動します"
指定した時刻(例: 22:00)に再起動し、メッセージを表示する場合のコマンドです。
# shutdown -r 22:00 "再起動します"
systemctl reboot
systemd
ベースのシステムでは、このコマンドを使って再起動を実行できます。
時間およびメッセージを指定することは出来ない
# systemctl reboot
init 6
SysVinit
ベースのシステムでは、ランレベルを6に変更することで再起動できます。
時間およびメッセージを指定することは出来ない
# init 6
telinit 6
init 6
と同様に、ランレベル6へ変更して再起動を実行します。
時間およびメッセージを指定することは出来ない
# telinit 6
強制的な再起動コマンド
reboot -f
-f
オプションを付けることで、システムを即座に強制再起動します。通常のシャットダウン処理をバイパスするため、データ損失のリスクがあります。
# reboot -f
systemctl reboot --force
systemd
を使用して、強制的に再起動を実行します。
# systemctl reboot --force
systemctl reboot --force --force
さらに --force
を2回指定することで、systemd
を完全にバイパスし、カーネルから直接再起動を実行します。システムが応答しなくなった場合の最終手段です。
# systemctl reboot --force --force
echo 1 > /proc/sys/kernel/sysrq && echo b > /proc/sysrq-trigger
SysRq
機能を使用して、カーネルレベルで即座に再起動を実行します。プロセスの終了処理を行わず、強制的に再起動するため、ファイルシステムの破損リスクがあります。
# echo 1 > /proc/sys/kernel/sysrq
# echo b > /proc/sysrq-trigger