Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

30.6. ブートローダーの確認

rpm を使用してカーネルをインストールすると、カーネルパッケージはブートローダー設定ファイル内にその新しいカーネル用のエントリーを作成します。ただし、rpm は、新しいカーネルをデフォルトのカーネルとして起動するよう設定し ませんrpm で新しいカーネルをインストールする場合は、手動で実行する必要があります。
rpm で新しいカーネルをインストールした後に、設定が正しいことを確認することが推奨されます。そうでない場合は、システムは Red Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Linux を適切に起動できない場合があります。この場合は、先に作成したブートメディアでシステムを起動し、ブートローダーを再設定します。
システムのアーキテクチャーを探して、ブートローダーを判断し、「See」リンクをクリックしてシステムの正しい手順に移動します。

表30.1 アーキテクチャー別のブートローダー

アーキテクチャーブートローダー参照
x86GRUB 「GRUB ブートローダーの設定」
AMD AMD64 または Intel 64 GRUB 「GRUB ブートローダーの設定」
IBM eServer System i OS/400 「OS/400 ブートローダーの設定」
IBM eServer System p YABOOT 「YABOOT ブートローダーの設定」
IBM System z z/IPL 

30.6.1. GRUB ブートローダーの設定

GRUB の設定ファイル /boot/grub/grub.conf には、defaulttimeoutsplashimage、および hiddenmenu (最後のディレクティブには引数がありません)などのディレクティブを含む行がいくつか含まれています。残りのファイルには、4 行の スタンザ が含まれており、それぞれがインストール済みカーネルを参照します。これらのスタンザは、常に title エントリーで始まります。その後、関連付けられた rootkernel ディレクティブ、および initrd ディレクティブを常にインデントする必要があります。各スタンザが、同じスタンザの title 行のバージョン番号(括弧内)が含まれる kernel /vmlinuz-<version_number> で始まることを確認します。

例30.2 /boot/grub/grub.conf

# grub.conf generated by anaconda
[comments omitted]
default=1
timeout=0
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu

title Red Hat Enterprise Linux (2.6.32-22.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-22.el6.x86_64 ro root=/dev/mapper/vg_vm6b-lv_root rd_LVM_LV=vg_vm6b/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rhgb quiet crashkernel=auto
        initrd /initramfs-2.6.32-22.el6.x86_64.img

title Red Hat Enterprise Linux (2.6.32-19.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-19.el6.x86_64 ro root=/dev/mapper/vg_vm6b-lv_root rd_LVM_LV=vg_vm6b/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rhgb quiet crashkernel=auto
        initrd /initramfs-2.6.32-19.el6.x86_64.img

title Red Hat Enterprise Linux 6 (2.6.32-17.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-17.el6.x86_64 ro root=/dev/mapper/vg_vm6b-lv_root rd_LVM_LV=vg_vm6b/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rhgb quiet
        initrd /initramfs-2.6.32-17.el6.x86_64.img
別の /boot/ パーティションを作成した場合、カーネルと initramfs イメージへのパスは /boot/ との相対パスになります。上記は 例30.2「/boot/grub/grub.conf」 で行います。したがって、最初のカーネルスタンザの initrd /initramfs-2.6.32-22.el6.x86_64.img 行は、root ファイルシステムがマウントされる際に initramfs イメージが実際に /boot/initramfs-2.6.32-22.el6.x86_64.img に置かれていることを意味します。また、grub.conf の各スタンザでカーネルパス(例: kernel /vmlinuz-2.6.32-22.el6.x86_64)に使用されます。
grub.conf の initrd ディレクティブは initramfs イメージを参照します。
grub.conf のカーネルブートスタンザでは、initrd ディレクティブは、同じカーネルバージョンに対応する initramfs ファイルの場所(別のパーティションにある場合は /boot/ ディレクトリーに対して相対的)を参照する必要があります。初期 RAM ディスクイメージを作成した以前のツール、mkinitrdinitrd と呼ばれるファイルを作成したため、この指示文は initrd と呼ばれます。したがって、grub.conf ディレクティブは、他のツールとの互換性を維持するために initrd のままです。初期 RAM ディスクイメージを作成するための dracut ユーティリティーを使用したシステムのファイル命名規則は、initramfs- <kernel_version > .img です。
Dracut は、Red Hat Enterprise Linux 6nbsp;Hat Enterprise Linux 6nbsp;LinuxRed Hat Enterprise Linux 6nbsp;6 で利用可能で、mkinitrd を通じて非常に多くの改良された新しいユーティリティーです。Dracut の使用方法は、「初期 RAM ディスクイメージの確認」 を参照してください。
kernel /vmlinuz-<kernel_version> 行で指定されるカーネルバージョン番号が、各スタンザの initrd /initramfs-<kernel_version>.img 行に指定されている initramfs イメージのバージョン番号と一致している必要があります。詳細は、手順30.1「初期 RAM ディスクイメージの確認」 を参照してください。
default= ディレクティブは、デフォルトで 起動するカーネルが GRUB に指示します。grub.conf の各 title は起動可能なカーネルを表します。GRUB は、titleで始まる起動可能なカーネルを表す 0 d スタンザをカウントします。例30.2「/boot/grub/grub.conf」 では、default=1 の行は、GRUB がデフォルトで 2 番目 のカーネルエントリー(つまり title Red Hat Enterprise Linux (2.6.32-19.el6.x86_64) )を起動することを示しています。
このため、例30.2「/boot/grub/grub.conf」 GRUB は、バージョン番号と比較すると、古いカーネルを起動するように設定されます。grub.conf最初title エントリーである新しいカーネルを起動するには、default の値を 0 に変更する必要があります。
rpm で新しいカーネルをインストールしたら、/boot/grub/grub.conf が正しいことを確認し、default= の値を新しいカーネルに変更します( 0からカウントするのを忘れている間は、コンピューターを新しいカーネルに再起動します)。ブートプロセスの出力を監視して、ハードウェアが検出されていることを確認します。
GRUB がエラーを表示し、デフォルトのカーネルで起動できない場合は、問題を修正できるように代替または古いカーネルでの起動を試みる方が簡単です。
GRUB 起動メニューを表示させる
grub.conftimeout ディレクティブを 0 に設定すると、システムの起動時に GRUB が起動可能なカーネルの一覧を表示しません。システムの起動時にこの一覧を表示するには、BIOS 情報が表示された後に英数字キーを押して保持します。GRUB メニューが表示されます。
または、先に作成したブートメディアを使用してシステムを起動します。