29.2. Anaconda のレスキューモード

Anaconda インストールプログラムのレスキューモードは、Red Hat Enterprise Linux 7 の DVD や他の起動用メディアを使って起動できる最小限の Linux 環境です。これには、多岐にわたる問題を修復するためのコマンドラインユーティリティーが含まれています。このレスキューモードは、ブートメニューの Troubleshooting サブメニューからアクセスできます。このモードでは、ファイルシステムを読み取り専用としてマウントしたりマウント自体をしない選択や、ドライバーディスクで提供されるドライバーのブラックリスト登録または追加、さらにはシステムパッケージのインストールやアップグレード、またはパーティションの管理を実行することができます。

注記

Anaconda のレスキューモードは、systemd システムやサービスマネージャーの一部として提供される レスキューモード (シングルユーザーモード と同等) や 緊急モードとは異なるものです。これらのモードについて詳細は、『Red Hat Enterprise Linux 7 システム管理者のガイド』を参照してください。
Anaconda のレスキューモードで起動するには、最小限の起動ディスクや USB ドライブ、完全インストール DVD といった Red Hat Enterprise Linux の起動メディアのいずれかを使用してシステムを起動できる必要があります。
Red Hatが提供するメディアを使用してシステムを起動する詳細な情報については、該当する章を参照してください。

重要

iSCSI や zFCP デバイスといった高度なストレージは、dracut 起動オプション (rd.zfcp=root=iscsi:options など)、または IBM System z 上の CMS 設定ファイルを使って設定する必要があります。レスキューモードで起動した後は、これらのストレージデバイスを対話形式で設定することはできなくなります。
dracut 起動オプションについての詳細情報は、dracut.cmdline(7) man ページを参照してください。CMS 設定ファイルについては、18章 IBM System z でのパラメーターと設定ファイル を参照してください。

手順29.2 Anaconda レスキューモードでの起動

  1. 最小限の起動メディアまたは完全インストール DVD もしくは USB ドライブからシステムを起動し、ブートメニューが表示されるまで待ちます。
  2. ブートメニューから、Troubleshooting サブメニューの Rescue a Red Hat Enterprise Linux system オプションを選択するか、inst.rescue オプションをブートコマンドラインに追加します。ブートコマンドラインを入力するには、BIOS ベースのシステム上で TAB キーを押すか、UEFI ベースのシステム上で e キーを押します。
  3. システムの起動に ドライバーディスク で提供されるサードパーティーのドライバーが必要な場合は、inst.dd=driver_name をブートコマンドラインに追加します。
    inst.rescue inst.dd=driver_name
    起動時にドライバーディスクを使用する方法の詳細については、「手動によるドライバー更新」 (AMD64 および Intel 64 システム用) または 「手動によるドライバー更新」 (IBM Power Systems サーバー用) を参照してください。
  4. Red Hat Enterprise Linux 7 ディストリビューションの一部として組み込まれているドライバーが原因でシステムが起動しない場合は、modprobe.blacklist= オプションをブートコマンドラインに追加します。
    inst.rescue modprobe.blacklist=driver_name
    ドライバーのブラックリスト登録についての詳細は、「ブラックリストへのドライバーの登録」を参照してください。
  5. 準備ができたら、Enter (BIOS ベースのシステム) または Ctrl+X (UEFI ベースのシステム) を押して、変更したオプションを起動します。以下のメッセージが表示されるまで待機します。
    The rescue environment will now attempt to find your Linux installation and mount it under the /mnt/sysimage/ directory. You can then make any changes required to your system. If you want to proceed with this step choose 'Continue'. You can also choose to mount your file systems read-only instead of read-write by choosing 'Read-only'. If for some reason this process fails you can choose 'Skip' and this step will be skipped and you will go directly to a command line.
    
    続行 を選択すると、ファイルシステムを /mnt/sysimage/ ディレクトリーにマウントしようとします。パーティションのマウントが失敗した場合、その旨が通知されます。読み取り専用 を選択すると、ファイルシステムを /mnt/sysimage/ ディレクトリーにマウントしようとしますが、読み取り専用モードで試行されます。スキップ を選択すると、ファイルシステムはマウントされません。ファイルシステムが破損していると思われる場合は、スキップ を選択します。
  6. システムをレスキューモードに切り替えた後に、VC (仮想コンソール) 1 と VC 2 にプロンプトが表示されます (VC 1 にアクセスするには、Ctrl+Alt+F1 キーの組み合わせを使用し、VC 2 にアクセスするには、Ctrl+Alt+F2 を使用します)。
    sh-4.2#
ファイルシステムがマウントされていても、Anaconda のレスキューモードにしている間のデフォルトの root パーティションは一時的な root パーティションであり、通常のユーザーモード (multi-user.target または graphical.target) で使用するファイルシステムの root パーティションではありません。ファイルシステムをマウントする選択をして正常にマウントした後には、以下のコマンドを実行して、Anaconda のレスキューモード環境の root パーティションをファイルシステムの root パーティションに変更することができます。
sh-4.2# chroot /mnt/sysimage
これは、root パーティションが 「/」 としてマウントされることが要求される rpm などのコマンドを実行する必要がある場合に役に立ちます。chroot 環境を終了するには、exit と入力してプロンプトに戻ります。
スキップ を選択した場合でも、Anaconda のレスキューモード内でパーティションや LVM2 論理ボリュームの手動によるマウントを試行できます。これは /directory/ のようなディレクトリーを作成し、次のコマンドを入力して実行します。
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 物理ボリュームやボリュームグループ、論理ボリュームの名前がすべて不明な場合はそれぞれ、pvdisplayvgdisplaylvdisplay のコマンドを使用します。
プロンプトから、以下のような多くの便利なコマンドが実行できます。
  • ネットワークが開始されている場合、sshscpping
  • テープドライブのユーザー用に dumprestore
  • パーティションの管理に partedfdisk
  • ソフトウェアのインストールまたはアップグレードに rpm
  • テキストファイルの編集に vi

29.2.1. sosreport のキャプチャー

sosreport コマンドラインユーティリティーは、実行中のカーネルのバージョン、ロードされているモジュール、システムおよびサービスの設定ファイルなどの設定や診断に関する情報をシステムから収集します。このユーティリティーの出力は、/var/tmp/ ディレクトリーの tar アーカイブに保存されます。
sosreport ユーティリティーは、システムエラーの分析に役立ち、トラブルシューティングを容易にする場合があります。以下の手順は、Anaconda のレスキューモードで sosreport 出力をキャプチャーする方法について説明します。

手順29.3 Anaconda のレスキューモードでの sosreport の使用

  1. Anaconda レスキューモードで起動するには、手順29.2「Anaconda レスキューモードでの起動」にある手順に従います。インストール済みのシステムの / (root) パーティションは必ず「読み取りと書き込み (read-write)」モードでマウントしてください。
  2. root ディレクトリーを /mnt/sysimage/ ディレクトリーに変更します。
    sh-4.2# chroot /mnt/sysimage/
  3. sosreport を実行し、システム設定および診断情報を含むアーカイブを生成します。
    sh-4.2# sosreport

    重要

    sosreport は実行時に、ユーザーにユーザー名とユーザーが Red Hat サポートサービスに問い合わせた際に取得するケース番号の入力を求めます。以下に示す文字やスペースを追加するとレポートが使用不可能になる可能性があるため、文字と数字のみを使用してください。
    # % & { } \ < > > * ? / $ ~ ' " : @ + ` | =
  4. オプション: 生成されたアーカイブをネットワークを使用して新たなロケーションに転送する場合、ネットワークインターフェースを設定しておく必要があります。動的 IP 設定を使用する場合、必要な手順はこれ以外にありません。ただし、静的アドレス指定を使用する場合は、以下のコマンドを実行して、IP アドレス (10.13.153.64/23 など) をネットワークインターフェース (dev eth0 など) に対して実行します。
    bash-4.2# ip addr add 10.13.153.64/23 dev eth0
    静的アドレス指定についての詳細は、『 Red Hat Enterprise Linux 7 ネットワークガイド』を参照してください。
  5. chroot 環境を終了します。
    sh-4.2# exit
  6. 生成されたアーカイブを新たな場所に保存し、その場所からアーカイブへのアクセスを容易にします。
    sh-4.2# cp /mnt/sysimage/var/tmp/sosreport new_location
    ネットワークを介したアーカイブの転送については、scp ユーティリティーを使用します。
    sh-4.2# scp /mnt/sysimage/var/tmp/sosreport username@hostname:sosreport
詳細は、以下の参考情報をご覧ください。

29.2.2. ブートローダーの再インストール

GRUB2 ブートローダーが誤って削除されたり、破損したり、または他のオペレーティングシステムによって置き換えられたりする場合があります。以下の手順は、マスターブートレコードに GRUB を再インストールするプロセスについて詳述しています。

手順29.4 GRUB2 ブートローダーの再インストール

  1. Anaconda レスキューモードで起動するには、手順29.2「Anaconda レスキューモードでの起動」にある手順に従います。インストール済みのシステムの / (root) パーティションは必ず「読み取りと書き込み (read-write)」モードでマウントしてください。
  2. root パーティションを変更します。
    sh-4.2# chroot /mnt/sysimage/
  3. 以下のコマンドを使用して GRUB2 ブートローダーを再インストールします。ここで、install_device はブートデバイス (通常は /dev/sda) になります。
    sh-4.2# /sbin/grub2-install install_device
  4. システムを再起動します。

29.2.3. RPM によるドライバーの追加、削除、置換

ドライバーが誤作動する場合やドライバーが不足している場合は、システムの起動時に問題が生じる可能性があります。Anaconda レスキューモードは、システムが起動に失敗した場合でもドライバーの追加、削除または置き換えを実行できる環境を提供します。誤作動するドライバーを削除したり、更新されたドライバーや不足しているドライバーを追加したりする際には、可能な場合は RPM パッケージマネージャーを使用することが推奨されます。

注記

ドライバーディスクからドライバーをインストールする場合、ドライバーディスクはこのドライバーを使用するためにシステム上のすべての initramfs イメージを更新します。ドライバーが原因でシステムが起動できない場合は、別の initramfs イメージからシステムを起動する方法は使用できません。

手順29.5 RPM によるドライバーの削除

  1. システムを Anaconda レスキューモードで起動します。手順29.2「Anaconda レスキューモードでの起動」にある説明に従ってください。インストール済みのシステムは必ず「読み取りと書き込み (read-write)」モードでマウントしてください。
  2. root ディレクトリーを /mnt/sysimage/ に変更します。
    sh-4.2# chroot /mnt/sysimage/
  3. rpm -e コマンドを使って、ドライバーパッケージを削除します。たとえば、xorg-x11-drv-wacom ドライバーパッケージを削除するには、以下を実行します。
    sh-4.2# rpm -e xorg-x11-drv-wacom
  4. chroot 環境を終了します。
    sh-4.2# exit
誤作動を起こすドライバーを何らかの理由で削除できない場合は、ドライバーが起動時に読み込まれないようにするため、代わりにドライバーを ブラックリスト に登録することができます。ドライバーのブラックリスト登録についての詳細は、「ブラックリストへのドライバーの登録」 および20章起動オプション を参照してください。
ドライバーをインストールするプロセスもこれに似ていますが、RPM パッケージがシステム上で利用できる状態である必要があります。

手順29.6 RPM パッケージからのドライバーのインストール

  1. システムを Anaconda レスキューモードで起動します。手順29.2「Anaconda レスキューモードでの起動」にある説明に従ってください。インストール済みのシステムは、読み取り専用でマウントしないでください
  2. ドライバーを含む RPM パッケージを利用できるようにします。たとえば、CD または USB フラッシュドライブをマウントして、RPM パッケージを /mnt/sysimage/ の下の希望する場所にコピーします。たとえば、/mnt/sysimage/root/drivers/ のようになります。
  3. root ディレクトリーを /mnt/sysimage/ に変更します。
    sh-4.2# chroot /mnt/sysimage/
  4. 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/sysimage/root/drivers/ になります。
  5. chroot 環境を終了します。
    sh-4.2# exit
ドライバーの削除、インストールが終了したら、システムを再起動します。