ブートシーケンス
カーネルを2.4.23にしてからブートドライブの位置 (/dev/hda1) を指定しなければいけないようになった問題だけど、単純に grub.conf の設定が間違っていたみたい。 ちゃんと、genkernelのログに設定方法が書いてあった。
# tail -15 /var/log/genkernel.log | head 10 * Kernel compiled successfully! * Required Kernel Params: * : root=/dev/ram0 init=/linuxrc real_root=/dev/$ROOT * where $ROOT is the devicenode for your root partition as * you should have specified in /etc/fstab * * You MUST tell your bootloader to use the generated initrd * * Recommended Kernel Params: * : vga=0x317 splash=verbose
ということで、grub.confを修正。
# diff -u /boot/grub/grub.conf.20040307 /boot/grub/grub.conf --- /boot/grub/grub.conf.20040307 2004-03-07 11:26:28.000000000 +0900 +++ /boot/grub/grub.conf 2004-03-07 13:30:05.000000000 +0900 @@ -5,5 +5,5 @@ # For booting GNU/Hurd title Gentoo Linux (genkernel) root (hd0,0) -kernel (hd0,0)/boot/kernel-2.4.23_pre8-gss-r2 root=/dev/hda3 vga=791 +kernel (hd0,0)/boot/kernel-2.4.23_pre8-gss-r2 root=/dev/ram0 real_root=/dev/hda3 init=/linuxrc vga=0x317 splash=verbose initrd (hd0,0)/boot/initrd-2.4.23_pre8-gss-r2
おそらく、genkernelのバージョンが3.0になってから起動方法が若干変わったんだろう。 root には RAMディスクを指定して、 real_root に本当のルートデバイスを指定するようになっている。
で、これで再起動したところ、起動時にブートドライブの位置を聞かれることはなくなった。 ところが、今度はrootドライブが2重にマウントされてしまった。
$ df Filesystem 1K-blocks Used Available Use% Mounted on /dev/hda3 11204988 4080600 7124388 37% / /dev/hda3 11204988 4080600 7124388 37% / none 95416 0 95416 0% /dev/shm /dev/hda1 69973 8750 57610 14% /boot
Linux Worldの4月号にも同じ現象が書いてあったな・・・。 muneda's diaryさんのところも、同じみたい。 linuxrc の中でもrootをマウントしているのが原因らしい。
とにかく、場所が場所なのでよく分からないままに色々試すのも危険。 精神衛生上よくないけど、このまま様子見かな。