RHEL10でrootパスワードを復旧する方法|GRUBとISOレスキューモードの2手順


この記事の監修:宮崎智広(Linux教育歴15年以上・受講者3,100名超)
HOMELinux技術 リナックスマスター.JP(Linuxマスター.JP)Linuxトラブルシューティング > RHEL10でrootパスワードを復旧する方法|GRUBとISOレスキューモードの2手順
「rootのパスワードを忘れてしまった」「RHEL10のサーバーにログインできなくなった」——
そんな場面に出くわしたとき、焦ってサーバーを再インストールしようとしていませんか?

実は、RHEL10にはrootパスワードを安全に再設定する方法が2つあります。
どちらも知っておけば、万が一の障害対応でも冷静に動けます。

この記事では、RHEL10でのrootパスワード設定・復旧方法を、実際の手順を交えて解説します。

この記事のポイント

・RHEL10でrootパスワードを復旧する2つの方法を解説
・GRUBから init=/bin/bash を使ったシングルユーザー的な起動手順
・ISOレスキューモードから chroot でパスワード再設定する手順
・SELinuxの .autorelabel が必要な理由と忘れた場合の影響


RHEL10でrootパスワードを復旧する方法|GRUBとISOレスキューモードの2手順

「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

RHEL10のrootパスワード復旧が「従来と少し変わった」理由

RHEL9以前と比べ、RHEL10ではいくつかの起動フローの変更が入っています。
特にGRUBの設定やinitプロセスの扱いが厳格になったため、
従来の方法がそのまま使えないケースが出てきました。

また、SELinuxが有効な環境では、パスワード変更後に必ず
touch /.autorelabel を実行してセキュリティラベルを再付与する必要があります。
このステップを忘れると、再起動後にSELinuxの強制モードでログインが拒否される場合があります。

以下では2つの方法を順に解説します。

方法1:GRUBから init=/bin/bash で起動する

OSがインストール済みで、ISOメディアがない場合に有効な方法です。
サーバーコンソールに物理アクセスできる(またはIPMI/iDRACのリモートコンソールが使える)環境で試してください。

1. GRUBメニューでカーネル行を編集する

サーバーを起動してGRUBメニューが表示されたら、eキーを押して編集モードに入ります。

linux から始まる行の末尾に移動し、以下を追記します。

init=/bin/bash

追記したら Ctrl+X または F10 で起動します。

2. ファイルシステムを読み書き可能に再マウントする

起動直後は /(ルートファイルシステム)が読み取り専用です。
以下のコマンドで読み書き可能な状態に変更します。

mount -o remount,rw /

3. rootパスワードを再設定する

passwd root # 新しいパスワードを2回入力する

「New password:」と「Retype new password:」の2回入力します。
「passwd: all authentication tokens updated successfully.」が表示されれば成功です。

4. SELinuxラベルを再付与してから再起動する

SELinuxが有効な環境では、このステップが重要です。

touch /.autorelabel exec /sbin/reboot -f

/.autorelabel ファイルを作成することで、次回起動時にSELinuxが全ファイルのセキュリティラベルを自動で再付与します。
この処理は初回起動で少し時間がかかりますが、正常な動作です。

RHEL10でrootパスワードを復旧する方法|GRUBとISOレスキューモードの2手順 - 解説1

方法2:ISOレスキューモードから chroot で復旧する(実際に使用した方法)

筆者がRHEL10のサーバー作業で実際に使ったのはこちらの方法です。
GRUBの編集が効かない環境や、OSの起動自体に問題がある場合でも有効な手順です。

1. RHEL10のISOでサーバーをブートする

RHEL10のインストールメディア(ISOイメージ)でサーバーを起動します。
起動メニューが表示されたら「Troubleshooting」を選択し、続けて「Rescue a Red Hat Enterprise Linux system」を選びます。

2. レスキューモードでファイルシステムをマウントする

レスキューモードが起動すると、既存のファイルシステムのマウント方法を尋ねるプロンプトが表示されます。
「Continue」を選ぶと /mnt/sysimage に既存のファイルシステムが自動でマウントされます。

3. chroot で既存のOSに入る

chroot /mnt/sysimage

chroot コマンドは「ルートディレクトリを一時的に切り替える」操作です。
これにより、レスキュー環境のシェルから既存のOSのコマンド群(passwd を含む)を実行できるようになります。

4. rootパスワードを再設定する

passwd root # 新しいパスワードを2回入力する

「passwd: all authentication tokens updated successfully.」が表示されたらパスワードの変更は完了です。

5. SELinuxラベル再付与を予約して再起動する

touch /.autorelabel exit reboot

exit で chroot 環境を抜け、reboot で再起動します。
ISOを取り外すか、ブート順序を変更してハードディスクから起動させてください。

.autorelabel を忘れるとどうなるか

SELinuxが有効な環境(RHEL10のデフォルト)で /.autorelabel を作成せずに再起動した場合、
SELinuxのラベルが正しく付与されていない状態になります。

その結果、sshd や PAM による認証処理が正常に動作せず、
正しいパスワードを入力してもログインを拒否されることがあります。

もし .autorelabel なしで再起動してしまった場合は、再度レスキューモードで起動し直し、
chroot /mnt/sysimage の後に restorecon -Rv /etc を実行してラベルを手動で復元するか、
SELinuxを一時的にPermissiveモードに変更して対応します。

2つの方法の使い分けまとめ

方法 ISOメディア OSが起動できる状態 適したケース
方法1(init=/bin/bash) 不要 必要 GRUBメニューにアクセスできる場合
方法2(ISOレスキューモード) 必要 不要 OS起動に問題がある場合・確実に復旧したい場合

RHEL10でrootパスワードを復旧する方法|GRUBとISOレスキューモードの2手順 - まとめ

まとめ

RHEL10のrootパスワード復旧は、状況に応じて2つのアプローチがあります。

方法1:GRUBから init=/bin/bash を追記して起動 → mount -o remount,rw /passwd root
方法2:ISOのレスキューモードで起動 → chroot /mnt/sysimagepasswd root

どちらの方法でも、最後に touch /.autorelabel を実行してSELinuxのラベル再付与を忘れずに。

20年以上Linuxサーバーを運用してきた経験から言うと、
「パスワードを忘れた = 終わり」ではありません。
正しい手順を知っていれば、落ち着いて対処できます。

「障害が起きたとき、冷静に動ける自信がありますか?」

rootパスワードの復旧はトラブルシューティングの基本の一つです。しかし、本当に重要なのはその先。障害対応、セキュリティ設定、ユーザー管理まで、Linuxを安全に運用するには体系的な知識が欠かせません。
現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。


無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録

宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として15年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。