ターミナルからLinuxを再起動する7つの方法

Reboot Linux

ターミナルからLinuxを再起動するのは難しそうに聞こえるかもしれませんが、心配しないでください。正しいコマンドを知っていれば非常に簡単です。Linuxを再起動することは、更新後、トラブルシューティングやシステムメンテナンス後に必要です。変更が有効になり、システムが安定した状態を保つことができます。特に、リモートのLinuxシステムを管理している場合は、ターミナルからのみ再起動が可能なため、重要です。即時再起動、スケジュールされた再起動、強制的なシャットダウンが必要な場合、それぞれの状況に応じた方法があります。この記事では、ターミナルを使用してLinuxを再起動するさまざまな方法について説明します。

1. rebootコマンドを使用する

rebootコマンドは、すべての実行中のプロセスを安全に終了します。システムを再起動する前に進行中のタスクが適切に終了することを保証します。これにより、データ損失が防止され、システムの安定性が保たれます。Linuxシステムを即時に再起動するには、rebootコマンドを実行します:

sudo reboot

適切なパスワードを入力し、Enterキーを押してLinuxを再起動します。

即時再起動を強制するには、-fオプションを付けてrebootコマンドを実行します:

sudo reboot -f

これにより、スケジュールされたシャットダウンや実行中のプロセスに関係なく、システムが即時に再起動されます。

2. shutdownコマンドを使用する

shutdownコマンドを使用して、システムを即時に再起動するか、特定の時間に予定することができます。たとえば、-rオプションを使用してshutdownコマンドを実行すると、Linuxシステムが即時に再起動します:

sudo shutdown -r now

shutdownコマンドを使用すると、特定の時間後に再起動をスケジュールできます。たとえば、2時間後にLinuxシステムを再起動する場合は、次のように実行します:

sudo shutdown -r +120

Scheduled Reboot

再起動をスケジュールしましたが、考え直した場合は、-cオプションで簡単にキャンセルできます:

sudo shutdown -c

3. systemctlコマンドを使用する

systemdを使用する最新のLinuxディストリビューションでは、システムを再起動するための推奨方法は、以下のコマンドを使用することです:

sudo systemctl reboot

このコマンドは、すべての実行中のプロセスを終了し、安全にシステムを再起動します。

4. initコマンドを使用する

SysVinitを使用する古いLinuxディストリビューションでは、次のコマンドを使用してシステムを再起動できます:

sudo init 6

init 6を実行すると、システムはランレベル6に切り替わり、再起動の準備をします。すべての実行中のプロセスが停止し、ファイルシステムがアンマウントされ、システムが再起動します。このコマンドは一部のシステムではまだ機能しますが、最新のLinuxバージョンではsystemctl rebootコマンドを使用することをお勧めします。

5. telinitコマンドを使用する

telinit 6コマンドは、init(または最新のシステムではsystemd)にランレベル6に切り替えるように指示することでLinuxを再起動します:

sudo telinit 6

このコマンドは、適切なシャットダウンプロセスに従って、制御された方法でシステムが再起動することを保証します。

6. REISUB(マジックSysRqキー)を使用する

Linuxシステムが応答しなくなった場合は、R、E、I、S、U、Bキーのシーケンスを使用して安全に再起動できます(BUSIERの反対を考えてください)。この方法は、SysRq(システムリクエスト)キーを使用してカーネルに特定のコマンドを送信します。この方法を使用してLinuxシステムを再起動するには、キーボードのAlt + SysRq(Print Screen)キーを押し、次のキーを1つずつ順番に押します:

  • R:キーボードを生モードにし、アプリケーションからの制御を奪います。
  • E:すべてのプロセスに終了信号を送ります。
  • I:すべてのプロセスに殺す信号を送ります。
  • S:ディスクの同期を強制し、すべてのデータがディスクに書き込まれることを保証します。
  • U:すべてのファイルシステムを読み取り専用に再マウントし、データの破損を防ぎます。
  • B:システムを即座に再起動します。

この方法は、システムが応答しなくなってもキーボード入力を受け付けるときに便利です。

7. SSH経由でLinuxを再起動する

リモートでLinuxサーバーを管理していて、再起動が必要な場合は、まずSSHを使用してサーバーに接続します:

ssh user@your-server-ip

Connect Remotely with ssh

接続後、次のコマンドでシステムを即座に再起動できます:

sudo reboot

同様に、再起動をスケジュールする必要がある場合は、次のコマンドを使用できます:

sudo shutdown -r +10 # 10分後に再起動

Schedule Restart Remotely

スケジュールされた再起動は、次のコマンドでいつでもキャンセルできます:

sudo shutdown -c

Cancel Sheduled Restart

これらのコマンドを実行するための必要な権限があることを確認し、準備は整います!

まとめ

ターミナルからLinuxを再起動するのは、正しいコマンドを知ってしまえば簡単です。即時の再起動、スケジュールされた再起動、またはフリーズしたシステムに対処するための方法が必要な場合は、Linuxはいくつかのオプションを提供して、さまざまなシナリオに適応できます。systemctl rebootは最新のディストリビューションの標準ですが、古いシステムでもinitとtelinitがサポートされています。リモート管理では、SSHを使用するとサーバーを容易に再起動できます。これらの方法を使えば、必要なときにターミナルから効率的にシステムを再起動できます。