まちゅダイアリー
2004-03-07 (日)
■ ブートシーケンス
カーネルを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をマウントしているのが原因らしい。
とにかく、場所が場所なのでよく分からないままに色々試すのも危険。 精神衛生上よくないけど、このまま様子見かな。
■ 再インストール
今の環境を捨てて、Gentoo 2004.0 を入れなおそうかどうか迷っている。
公式ドキュメントには、1.4 からだと emerge -u world で2004相当になるとは書かれている。
If you already have a working installation of Gentoo Linux (Version 1.4) there is no need to reinstall. You will automatically get Gentoo 2004.0 if you sync your Portage tree and run emerge --update world.
しかし、失敗したのは全く使わない X Window と Gnome を入れてしまったこと。 このため、emerge -u world するとGnome関連も再コンパイルとなる。 これらはパッケージの数が多い上に、コンパイルにも時間がかかるんだよね。 トータルで何日かかるか見当もつかないや。
とるべき道としては、
- emerge.logを参考にGnome, X Window 関連のパッケージを一つずつ削除する
- 再インストールしてGentoo 2004にする
なんだろうけど、後者のほうが楽しそうなんだよね。
■ 2004.0
誘惑に負けて挑戦。 ミラーサイトより、 /releases/x86/2004.0/livecd/universal/install-x86-universal-2004.0.iso を取得して、CD-Rに焼く。 このCD-Rから起動すると、やっぱりNICが認識しない。またかよ。
今度はPCMCIA自体が認識していないみたい。 起動時に、 boot: gentoo dopcmcia dokeymap としているのに、どちらのオプションも有効になっていないようだ。 ま、前回もNICを使わずにインストールしたので、今回もうまくいくだろうと思ってインストールを進める。
まずは、既存のファイルをすべて /mnt/gentoo/backup *1 に退避させる。 それから、CD-Rに含まれているStage3のファイルを展開。
# tar -xvjpf /mnt/cdrom/stages/stage3-pentium3-20040218.tar.bz2 # cp -R /mnt/cdrom/distfiles /mnt/gentoo/usr/portage/distfiles
次に、カーネルコンパイルに必要な基本的なバイナリが含まれたpackagesをコピーする・・・あれ、 /mnt/cdrom/packages がない?
最新のドキュメントにも
Code Listing 16: Copy over precompiled packages # mkdir -p /mnt/gentoo/usr/portage/packages/All # cp /mnt/cdrom/packages/All/* /mnt/gentoo/usr/portage/packages/All/
と書かれているのに。 NICが認識していないので、ネットワークから取得することもできず。
しかたない。既存の環境 (/mnt/gentoo/backup) からgenkernelの構築に必要なファイルを取ってくるしかないなぁ。
*1 mount /dev/hda3 /mnt/gentoo としている