30.6. ブートローダーの確認
rpm を使用してカーネルをインストールすると、カーネルパッケージはブートローダー設定ファイル内にその新しいカーネル用のエントリーを作成します。ただし、rpm は、新しいカーネルをデフォルトのカーネルとして起動するよう設定し ません。rpm で新しいカーネルをインストールする場合は、手動で実行する必要があります。
rpm で新しいカーネルをインストールした後に、設定が正しいことを確認することが推奨されます。そうでない場合は、システムは Red Hat Enterprise Linuxnbsp;Hat Enterprise Linuxnbsp;Linux を適切に起動できない場合があります。この場合は、先に作成したブートメディアでシステムを起動し、ブートローダーを再設定します。
システムのアーキテクチャーを探して、ブートローダーを判断し、「See」リンクをクリックしてシステムの正しい手順に移動します。
アーキテクチャー | ブートローダー | 参照 |
---|---|---|
x86 | GRUB | 「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
には、default
、timeout
、splashimage
、および hiddenmenu
(最後のディレクティブには引数がありません)などのディレクティブを含む行がいくつか含まれています。残りのファイルには、4 行の スタンザ が含まれており、それぞれがインストール済みカーネルを参照します。これらのスタンザは、常に title
エントリーで始まります。その後、関連付けられた root
、kernel
ディレクティブ、および 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 ディスクイメージを作成した以前のツール、mkinitrd が initrd
と呼ばれるファイルを作成したため、この指示文は 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.conf
の timeout
ディレクティブを 0
に設定すると、システムの起動時に GRUB が起動可能なカーネルの一覧を表示しません。システムの起動時にこの一覧を表示するには、BIOS 情報が表示された後に英数字キーを押して保持します。GRUB メニューが表示されます。
または、先に作成したブートメディアを使用してシステムを起動します。