一部のバージョンの GRUB ブートローダーは、システム内の最初の 8 台のハードドライブからしかブートできません。オペレーティングシステム (OS) とブートローダーを、オプション ROM が有効になっているホストバスアダプタ (HBA) に接続されているドライブリスト内の 9 番目以降のドライブにインストールできます。ただし、OS のインストール後にシステムをリブートすると、GRUB ブートローダーは GRUB プロンプトでハングアップし、ディスクドライブから OS をロードするためにディスク I/O 操作を実行しません。
影響を受けるソフトウェア:
Unified Extensible Firmware Interface (UEFI) BIOS またはレガシー (非 UEFI) BIOS を使用する Oracle Linux 6.1
UEFI BIOS またはレガシー BIOS を使用する Red Hat Enterprise Linux (RHEL 6.1)
レガシー BIOS を使用する SUSE Linux Enterprise Server (SLES) 11 SP1/SP2
レガシー BIOS を使用する Oracle Linux 5.7 および 5.8
レガシー BIOS を使用する RHEL 5.7 および 5.8
レガシー BIOS を使用する Oracle VM 3.0 および 3.1
リリース 1.0、1.1、1.2、1.3、1.4.4、および 1.5
回避方法:
オペレーティングシステムと BIOS 構成に応じて、次のいずれかの解決方法を選択します。
解決方法 1 (すべてのオペレーティングシステムおよびレガシー BIOS または UEFI BIOS 構成のサポート):
ディスクドライブを再配列して、オペレーティングシステムとブートローダーをシステム内の最初の 8 台のディスクドライブのうち 1 つに再インストールします。この方法では、BIOS 設定ユーティリティーを開始して、システムブートに使用されていないディスクドライブに接続されている HBA のオプション ROM を無効にする必要があることがあります。
BIOS 設定ユーティリティーの開始と HBA のオプション ROM 設定の変更については、『Sun Server X3-2L 管理ガイド』で「オプション ROM 設定の構成」を参照してください。
解決方法 2 (レガシー BIOS 構成での Oracle Linux 6.1 および RHEL 6.1 のサポート):
この手順では、OS の GRUB RPM を更新するプロセス、およびレスキュー環境からディスクドライブの MBR に GRUB を再インストールするプロセスの詳細を示します。レスキュー環境からの GRUB MBR ブートコードの更新に関する詳細は、https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/ap-rescuemode.html#Rescue_Mode-x86 を参照してください。
始める前に、Oracle Linux 6.2 または RHEL 6.2 インストールメディアを入手する必要があります。
必要に応じて、Oracle Linux 6.2 または RHEL 6.2 インストールブートメディアからシステムをブートします。
インストールプロンプトで、linux rescue と入力してレスキュー環境を開始します。
インストールメディア用のディレクトリを作成します。
mkdir /mnt/cd
インストールメディアをマウントします。
mount -o ro /dev/sr0 /mnt/cd
cp /mnt/cd/Packages/grub-0.97-75*rpm /mnt/sysimage
ルートパーティションでルート環境の変更を開始します。
chroot /mnt/sysimage
yum localupdate /grub-0.97-75*rpm || rpm -Uvh /grub-0.97-75*rpm
GRUB ブートローダーを再インストールします。
/sbin/grub-install bootpart
ここでは、bootpart はブートパーティション (通常は /dev/sda) です。
/boot/grub/grub.conf ファイルを確認します。GRUB が追加のオペレーティングシステムを制御するには、追加のエントリが必要な場合があります。
システムをリブートします。
reset /System
解決方法 3 (UEFI BIOS 構成での Oracle Linux 6.1 および RHEL 6.1 のサポート):
この手順では、レスキュー環境から GRUB RPM を最新バージョンに更新することで grub.efi バイナリを更新するプロセスの詳細を示します。レスキュー環境からの GRUB RPM の更新に関する詳細は、https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/ap-rescuemode.html#Rescue_Mode-x86 を参照してください。
始める前に、Oracle Linux 6.2 または RHEL 6.2 インストールメディアを入手する必要があります。
必要に応じて、Oracle Linux 6.2 または RHEL 6.2 インストールブートメディアからシステムをブートします。
UEFI ブートローダーメニューで、レスキューを選択してレスキュー環境を開始します。
インストールメディア用のディレクトリを作成します。
mkdir /mnt/cd
インストールメディアをマウントします。
mount -o ro /dev/sr0 /mnt/cd
cp /mnt/cd/Packages/grub-0.97-75*rpm /mnt/sysimage
ルートパーティションでルート環境の変更を開始します。
chroot /mnt/sysimage
yum localupdate /grub-0.97-75*rpm || rpm -Uvh /grub-0.97-75*rpm
ルート環境を終了します。
chroot env
レスキューモードを終了します。
システムをリブートします。
reset /System