F.10. レスキューモードの使用
インストールプログラムのレスキューモードは、Red Hat Enterprise Linux DVD またはその他の起動メディアから起動できる最小限の Linux 環境です。さまざまな問題を修復するコマンドラインユーティリティーが含まれています。レスキューモードは、起動メニューの Troubleshooting メニューからアクセスできます。このモードでは、ファイルシステムを読み取り専用としてマウントしたり、拒否リストに登録したり、ドライバーディスクで提供されるドライバーを追加したり、システムパッケージをインストールまたはアップグレードしたり、パーティションを管理したりできます。
インストールプログラムのレスキューモードは、systemd
システムおよびサービスマネージャーの一部として提供されるレスキューモード (シングルユーザーモードに相当) および緊急モードとは異なります。
レスキューモードで起動するには、最小起動ディスク、USB ドライブ、フルインストール DVD など、Red Hat Enterprise Linux の起動用メディアを使用してシステムを起動できる必要があります。
iSCSI デバイスや zFCP デバイスなどの高度なストレージは、rd.zfcp=
、root=iscsi:
オプション などの dracut
起動オプションを使用するか、64 ビットの IBM Z 上の CMS 設定ファイルで設定する必要があります。レスキューモードで起動した後は、ストレージデバイスを対話的に設定できません。dracut
起動オプションの詳細は、dracut.cmdline(7)
の man ページを参照してください。
F.10.1. レスキューモードでシステムの起動
この手順では、レスキューモードで起動する方法を説明します。
手順
- 最小限の起動用メディア、フルインストールの DVD、または USB ドライブからシステムを起動し、起動メニューが表示されるまで待ちます。
-
起動メニューから Troubleshooting > Rescue a Red Hat Enterprise Linux system オプションを選択するか、
inst.rescue
オプションを起動コマンドラインに追加します。起動コマンドラインに入るには、Tab キー (BIOS ベースのシステムの場合) を押すか、e キー (UEFI ベースのシステムの場合) を押します。 必要に応じて、起動するドライバーディスクで提供されるサードパーティーのドライバーが必要な場合は、
inst.dd=driver_name
を起動コマンドラインに追加します。inst.rescue inst.dd=driver_name
必要に応じて、Red Hat Enterprise Linux ディストリビューションに含まれるドライバーが原因でシステムが起動しない場合は、
modprobe.blacklist=
オプションを起動コマンドラインに追加します。inst.rescue modprobe.blacklist=driver_name
Enter (BIOS ベースのシステムの場合) または Ctrl+X (UEFI ベースのシステムの場合) を押して、変更したオプションを起動します。次のメッセージが表示されるまで待ちます。
The rescue environment will now attempt to find your Linux installation and mount it under the directory: /mnt/sysroot/. You can then make any changes required to your system. Choose 1 to proceed with this step. You can choose to mount your file systems read-only instead of read-write by choosing 2. If for some reason this process does not work choose 3 to skip directly to a shell. 1) Continue 2) Read-only mount 3) Skip to shell 4) Quit (Reboot)
1 を選択すると、インストールプログラムは
/mnt/sysroot/
ディレクトリーにファイルシステムをマウントしようとします。パーティションのマウントに失敗すると通知されます。2 を選択すると、ファイルシステムを/mnt/sysroot/
ディレクトリーにマウントしようとしますが、読み取り専用モードになります。3 を選択すると、ファイルシステムはマウントされません。システムルートの場合には、インストーラーは
/mnt/sysimage
と/mnt/sysroot
の 2 つのマウントポイントをサポートします。/mnt/sysroot
パスは、ターゲットシステムの/
をマウントするために使用されます。通常、物理ルートとシステムの root は同じであるため、/mnt/sysroot
は/mnt/sysimage
と同じファイルシステムに割り当てられます。唯一の例外は、デプロイメントに基づいてシステムの root が変更する rpm-ostree システムのみです。次に、/mnt/sysroot
は、/mnt/sysimage
のサブディレクトリーに割り当てられます。chroot には/mnt/sysroot
を使用することを推奨します。続行するには 1 を選択します。システムがレスキューモードになると、VC (仮想コンソール) 1 および VC 2 にプロンプトが表示されます。
Ctrl+Alt+F1
キーの組み合わせで VC 1 にアクセスし、Ctrl+Alt+F2
で VC 2 にアクセスします。sh-4.2#
ファイルシステムがマウントされていても、レスキューモードではデフォルトの root パーティションは一時的な root パーティションであり、通常のユーザーモード (
multi-user.target
またはgraphical.target
) で使用するファイルシステムの root パーティションではありません。ファイルシステムのマウントを選択し、正常にマウントされた場合は、次のコマンドを実行してレスキューモード環境の root パーティションを、ファイルシステムの root パーティションに変更できます。sh-4.2# chroot /mnt/sysroot
これは、root パーティションが
/
としてマウントされることが求められるrpm
などのコマンドを実行する必要がある場合に便利です。chroot 環境を終了するには、exit と入力してプロンプトに戻ります。3 を選択した場合でも、
/directory/
などのディレクトリーを作成し、次のコマンドを入力すると、レスキューモード内でパーティションまたは LVM2 論理ボリュームを手動でマウントできます。sh-4.2# mount -t xfs /dev/mapper/VolGroup00-LogVol02 /directory
上記のコマンドでは、
/directory/
は作成したディレクトリーで、/dev/mapper/VolGroup00-LogVol02
はマウントする LVM2 論理ボリュームになります。パーティションのタイプが XFS 以外の場合は、文字列 xfs を正しい種類 (ext4 など) に置き換えます。すべての物理パーティションの名前が不明な場合は、次のコマンドを実行するとリストが表示されます。
sh-4.2# fdisk -l
LVM2 物理ボリューム、ボリュームグループ、または論理ボリュームの名前がすべて不明な場合は、
pvdisplay
コマンド、vgdisplay
コマンド、またはlvdisplay
コマンドを使用します。
F.10.2. レスキューモードでの SOS レポートの使用
sosreport
コマンドラインユーティリティーは、実行中のカーネルバージョン、読み込み済みモジュール、システムおよびサービスの設定ファイルなどの設定および診断情報をシステムから収集します。このユーティリティーの出力は、/var/tmp/
ディレクトリーの tar アーカイブに保存されます。sosreport
ユーティリティーは、システムエラーの分析とトラブルシューティングに役立ちます。この手順に従って、レスキューモードで sosreport
出力を取得します。
前提条件
- レスキューモードでシステムを起動している。
-
インストール済みのシステムの
/ (root)
パーティションを読み書きモードでマウントしている。 - この問題を Red Hat サポートに連絡し、ケース番号を受け取っている。
手順
root ディレクトリーを
/mnt/sysroot/
ディレクトリーに変更します。sh-4.2# chroot /mnt/sysroot/
sosreport
を実行して、システム設定と診断情報を含むアーカイブを生成します。sh-4.2# sosreport
重要sosreport
は、Red Hat サポートから受け取った名前とケース番号の入力を求めるプロンプトが表示されます。次の文字またはスペースを追加するとレポートが使用できなくなる可能性があるため、英数字のみを使用してください。# % & { } \ < > > * ? / $ ~ ' " : @ + ` | =
必要に応じて、ネットワークを使用して、生成されたアーカイブを新しい場所に転送する場合は、ネットワークインターフェイスを設定する必要があります。このシナリオでは、他の手順は必要ないため、動的 IP アドレス指定を使用します。ただし、静的アドレスを使用する場合は、次のコマンドを実行して、ネットワークインターフェイス (dev eth0 など) に IP アドレス (10.13.153.64/23 など) を割り当てます。
bash-4.2# ip addr add 10.13.153.64/23 dev eth0
chroot 環境を終了します。
sh-4.2# exit
生成されたアーカイブを新しい場所に保存し、その場所からアーカイブへのアクセスを容易にします。
sh-4.2# cp /mnt/sysroot/var/tmp/sosreport new_location
ネットワークを介したアーカイブの転送は、
scp
ユーティリティーを使用します。sh-4.2# scp /mnt/sysroot/var/tmp/sosreport username@hostname:sosreport
F.10.3. GRUB2 ブートローダーの再インストール
シナリオによっては、GRUB2 ブートローダーが誤って削除または破損されたり、他のオペレーティングシステムによって置き換えられることがあります。BIOS を備えた AMD64 および Intel 64 システム上のマスターブートレコード (MBR) に GRUB2 を再インストールするには、この手順を使用します。
前提条件
- レスキューモードでシステムを起動している。
-
インストール済みのシステムの
/ (root)
パーティションを読み書きモードでマウントしている。 -
/boot
マウントポイントを読み取り/書き込みモードでマウントしている。
手順
root パーティションを変更します。
sh-4.2# chroot /mnt/sysroot/
install_device
ブロックデバイスがインストールされている GRUB2 ブートローダーを再インストールします。sh-4.2# /sbin/grub2-install install_device
重要grub2-install
コマンドを実行すると、以下の条件がすべて適用されると、マシンが起動できなくなる可能性があります。- システムは、EFI (Extensible Firmware Interface) を使用する AMD64 または Intel 64 です。
- Secure Boot が有効になります。
grub2-install
コマンドを実行すると、EFI (Extendsible Firmware Interface) および Secure Boot が有効な AMD64 システムまたは Intel 64 システムを起動することはできません。この問題は、grub2-install
コマンドが shim アプリケーションを使用する代わりに直接起動する署名されていない GRUB2 イメージをインストールするために発生します。システムが起動すると shim アプリケーションはイメージの署名を検証します。見つからない場合は、システムの起動に失敗します。- システムを再起動します。
F.10.4. RPM を使用してドライバーを追加または削除
ドライバーが見つからないか、誤作動すると、システムの起動時に問題が発生します。レスキューモードは、システムが起動に失敗してもドライバーを追加または削除できる環境を提供します。可能な場合は、RPM パッケージマネージャーを使用して、誤作動するドライバーを削除するか、更新されたドライバーや不足しているドライバーを追加することが推奨されます。以下の手順に従って、ドライバーを追加または削除します。
ドライバーディスクからドライバーをインストールすると、ドライバーディスクは、このドライバーを使用するシステムにある initramfs
イメージをすべて更新します。ドライバーが原因でシステムが起動できない場合は、別の initramfs
イメージからシステムを起動する方法は使用できません。
F.10.4.1. RPM を使用したドライバーの追加
以下の手順に従ってドライバーを追加します。
前提条件
- レスキューモードでシステムを起動している。
- インストール済みのシステムを読み書きモードでマウントしている。
手順
-
そのドライバーを含む RPM パッケージを利用できるようにします。たとえば、CD または USB フラッシュドライブをマウントして、RPM パッケージを
/mnt/sysroot/
配下の任意の場所 (例:/mnt/sysroot/root/drivers/
) にコピーします。 root ディレクトリーを
/mnt/sysroot/
に変更します。sh-4.2# chroot /mnt/sysroot/
rpm -ivh
コマンドを使用して、ドライバーパッケージをインストールします。たとえば、以下のコマンドを実行して、xorg-x11-drv-wacom
ドライバーパッケージを/root/drivers/
からインストールします。sh-4.2# rpm -ivh /root/drivers/xorg-x11-drv-wacom-0.23.0-6.el7.x86_64.rpm
注記この chroot 環境の
/root/drivers/
ディレクトリーは、元のレスキュー環境の/mnt/sysroot/root/drivers/
ディレクトリーです。chroot 環境を終了します。
sh-4.2# exit
F.10.4.2. RPM を使用したドライバーの削除
以下の手順に従ってドライバーを削除します。
前提条件
- レスキューモードでシステムを起動している。
- インストール済みのシステムを読み書きモードでマウントしている。
手順
root ディレクトリーを
/mnt/sysroot/
ディレクトリーに変更します。sh-4.2# chroot /mnt/sysroot/
rpm -e
コマンドを使用して、ドライバーパッケージを削除します。たとえば、xorg-x11-drv-wacom
ドライバーパッケージを削除するには、次のコマンドを実行します。sh-4.2# rpm -e xorg-x11-drv-wacom
chroot 環境を終了します。
sh-4.2# exit
誤動作のあるドライバーを何らかの理由で削除できない場合は、代わりにドライバーを拒否リストに登録することで、起動時に読み込まれないようにすることができます。
- ドライバーの追加および削除が終了したら、システムを再起動します。