RHEL4とSLES9ではGRUBの設定ファイルの位置と役割が異なります。RHEL4における表1の3つのファイルは、すべて同じものを指しています。RHEL4とSLES9の双方に"/etc/grub.conf"という同名ファイルが存在していますが、役割は異なりますので注意が必要です。混乱を避けるため、どちらのディストリビューションにおいても"/boot/grub/menu.lst"を編集するのがいいでしょう。
またSLES9では、"/boot"ディレクトリ以下に、"vmlinuz"と"initrd"という2つのシンボリックリンクがある点がRHEL4と異なります。"vmlinuz"からはじまる名前のファイルはカーネル本体のファイルであり、"initrd"からはじまる名前のファイルは初期ラムディスクファイルです。初期ラムディスクファイルについては、後ほど解説します。
"/boot/"ディレクトリーの内容
-RHEL4
# ls -l /boot
-rw-r--r-- 1 root root initrd-2.6.9-11.ELsmp.img
-rw-r--r-- 1 root root vmlinuz-2.6.9-11.ELsmp
-SLES9
# ls -l /boot
lrwxrwxrwx 1 root root initrd -> initrd-2.6.5-7.139-smp
-rw-r--r-- 1 root root initrd-2.6.5-7.139-smp
lrwxrwxrwx 1 root root vmlinuz -> vmlinuz-2.6.5-7.139-smp
-rw-r--r-- 1 root root vmlinuz-2.6.5-7.139-smp
このシンボリックリンク自体はGRUBと直接は関係ないのですが、GRUB設定ファイル内の記述に影響しています。GRUB設定ファイル内のファイル名に関する記述において、RHEL4では"vmlinuz-2.6.9-11.ELsmp"、"initrd-2.6.9-11.ELsmp.img"といったカーネルイメージのファイルおよび初期ラムディスクファイルを直接指定しています。
それに対し、SLES9では"vmlinuz"や"initrd"というシンボリックリンクを指定しており、"vmlinuz-2.6.5-7.139-smp"などのカーネルイメージのファイルや"initrd-2.6.5-7.139-smp"などの初期ラムディスクファイルそのものを指定していません。
そのため、カーネルのカスタマイズやアップデートをおこなった後など、それらのファイルが変更された場合の再設定の方法が異なりますので注意が必要です。
GRUB設定ファイル内容
-RHEL4
# cat /boot/grub/grub.conf
:
title Red Hat Enterprise Linux AS (2.6.9-11.ELsmp)
root (hd0,0)
kernel /vmlinuz-2.6.9-11.ELsmp ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.9-11.ELsmp.img
:
-SLES9
# cat /boot/grub/menu.lst
:
title linux
kernel (hd0,0)/boot/vmlinuz root=/dev/sda3 selinux=0 splash=silent showops resume=/dev/sda2 elevator=cfq showopts
initrd (hd0,0)/boot/initrd
:
|