
LinuxC入門|rescue.targetを用いたLinuxのレスキュー起動
Linux を使っていると、設定ミスやディスク障害などが原因で「いつものように起動できない…」という場面に出会うことがあります。
そんなときに心強い味方になってくれるのが、rescue.target を使ったレスキュー起動です。
rescue.target は systemd が用意している特別な起動モードで、最小限の環境だけを立ち上げて、トラブルの原因調査や復旧作業を行うためのものです。
GUI はもちろん、多くのサービスも起動しないため、壊れた設定に引きずられにくい状態で作業できます。
ここでは、「なぜ rescue.target が必要なのか」「どんな仕組みで起動するのか」、そして GRUB から rescue.target で起動する流れ を、順を追ってわかりやすく確認していきましょう。
まず、rescue.target がどんな位置づけの存在なのかを整理しておきます。

systemd の target と rescue.target の位置づけ
| target 名 | 起動内容 | 主な用途 |
|---|---|---|
| multi-user.target | CUI 通常起動 | サーバ運用 |
| graphical.target | GUI 起動 | デスクトップ利用 |
| rescue.target | 最小限の起動 | 障害対応・復旧 |
| emergency.target | さらに最小限 | 深刻なトラブル対応 |
rescue.target は、通常の CUI 起動よりもさらにサービスを絞った状態で起動します。
ファイルシステムの修復や、設定ファイルの書き戻しなど、「とにかくシステムに入って直したい」という場面で活躍します。
通常であれば systemd の操作は systemctl コマンドで行いますが、システムが起動途中で止まってしまう場合は、そもそも systemctl を実行できません。
そこで利用するのが、ブートローダー(GRUB)から直接 rescue.target を指定して起動する方法です。
起動時に PC の電源を入れると、AlmaLinux 9.7 では GRUB の画面が一瞬表示されます。
このタイミングで Esc キーを押す と、GRUB のメニュー画面が表示されます。
Esc を押すタイミングは少しシビアなので、電源投入後に 連打するくらいの気持ち で問題ありません。
GRUB の画面では、通常起動用のエントリとして

のような項目が選択されているはずです。
その状態で e キー を押すと、起動処理の編集画面に切り替わります。
編集画面では、起動時に使われる設定がテキストで表示されます。
その中から、次のように linux で始まる行 を探します。
linux ($root)/vmlinuz-5.14.0-0-611.13.1.el9_7.x86_64 root=UUID=...
この行の 末尾 に、次の文字列を追記します。
systemd.unit=rescue.target

ここで少し注意点があります。
この画面では 英語キーボードとして入力が認識される ため、「=」を入力したい場合は、日本語キーボードの ^ キー を押します。
入力が終わったら、Ctrl + X を押します。
すると、指定した内容どおり rescue.target で起動 が始まります。
rescue.target で起動が完了すると、最小限の環境で停止し、root ユーザーのパスワード入力を求められます。

ここで root のパスワードを入力すると、レスキュー環境にログインできます。
GUI は起動しておらず、サービスもほとんど動いていませんが、その分システムはとても軽い状態です。
この状態で、設定ファイルの修正やログの確認などを行います。
systemctl reboot の役割
systemctl reboot は、systemd を通してシステムを安全に再起動するコマンドです。
コマンド書式
systemctl reboot主なポイント
| 項目 | 説明 |
|---|---|
| 再起動処理 | systemd 管理下で再起動 |
| 安全性 | プロセスを整理して終了 |
rescue.target から再起動
[root@AlmaLinux ~]# systemctl rebootこのコマンドを実行すると、rescue.target での作業を終了し、通常の起動フローで再起動します。
まとめ
ここまでの流れを、簡単に整理してみましょう。
| 手順 | 内容 |
|---|---|
| 1 | 起動時に Esc を押して GRUB 画面を表示 |
| 2 | 通常起動項目を選択して e を押す |
| 3 | linux 行の末尾に systemd.unit=rescue.target を追記 |
| 4 | Ctrl + X で起動 |
| 5 | root パスワードを入力してレスキュー作業 |
| 6 | systemctl reboot で再起動 |
rescue.target は、「最後の手段」ではなく「落ち着いて直すための入口」 です。
仕組みを知っていれば、システムが起動しなくなっても慌てずに対応できます。
AlmaLinux 9.7 を安心して運用するためにも、ぜひ一度はこのレスキュー起動を頭の中でシミュレーションしておいてくださいね。
