RT Linuxのインストール

linux-2.4.22.tar.bz2 rtlinux-3.2-rc1.tar.bz2をダウンロードしてくる。 /usr/srcにおいて解凍・展開
ln -s linux-2.4.22 linux
cd /usr/src/linux
パッチを当てる
patch -p1 < ../rtlinux-3.2-rc1/patches/kernel_patch-2.4.22-rtl3.2-pre3
patching file Makefile
patching file arch/i386/config.in
(略)
patching file mm/vmalloc.c
The next patch would delete the file
net/ipv4/netfilter/ipt_MASQUERADE.c~,
which does not exist!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored
最後はむし。
make menuconfig
make dep
make clean
make bzImage
make modules
make modules_install
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.4.22-rtl3.2-pre3
cp /usr/src/linux/System.map /boot/System.map-2.4.22-rtl3.2-pre3
ln -sf /boot/System.map-2.4.22-rtl3.2-pre3 /boot/System.map
/boot/grub/grub.confに以下を追加
title Scientific Linux-rtl (2.4.22-rtl3.2-pre3)
        root (hd0,0)
        kernel /vmlinuz-2.4.22-rtl3.2-pre3 ro root=/dev/md2 hdc=ide-scsi apm=off
root (hd0,0)というのはカーネルのありかをしてしている。HDD0(1番目)の第 0パーティション、という意味。 でrebootすると下のようにkernel panic。
kmod: failed to exec /sbin/modprobe -s -k block-major-9, errno = 2
VFS: Cannot open root device "md2" or 09:02
Please append a corrent "root=" boot option
Kernel panic: VFS: Unable to mount root fs on 09:02
うーん。rootにraidデバイスを指定してるのが悪いのか? 以下のようにroot=/dev/md2としているのをroot=/dev/hda1としてみる。
title Scientific Linux-rtl (2.4.22-rtl3.2-pre3)
        root (hd0,0)
        kernel /vmlinuz-2.4.22-rtl3.2-pre3 ro root=/dev/hda1 hdc=ide-scsi apm=off
すると以下のようなメッセージ
EXT2-fs warning (device ide0(3,1)): ext2_read_super: mounting ext3 filesystem as ext2
VFS: Mounted root (ext2 filesystem) readonly.
Freeing unused kernel memory: 128k freed
Warning: unable to open an initial console.
Kernel panic: No init found. Try passing init= option to kernel.
block-major-9はmodprobe -c でわかるらしい。見てみるとこれはmdのalias。 (ちなみにmd-personality-3はraid1だった。) やっぱりraidで怒られている。 make menuconfigでraidの部分を< M >でなくて< * >(built-in) にして再コンパイル。 するととりあえずlogin画面になった。あれ?キーボード効かない。。。 make menuconfigのInput core supportの欄でkeyboadとマウスにチェックを入 れてみる。 再コンパイル、reboot。起動中に USB filesystem FAILED とかUSB関連がFAILEDになっている。USB関係すべてチェック入れるか? 起動中にUSBのキーボードやマウスのmoduleがロードできなかったみたいな メッセージが出ていたが、(keybdev、mousedev)とりあえずキーボード、マウ ス動くようになった。
iptablesがなんとかかんとか ext3 not supported by kernelとかエラー吐かれてる。 make mainconfigのFile systemsのExt3を選んだら消えた模様。 (キーボード効かないから確認できん) -->何かを選んだら使えるようになった!
結局よくわからんものは組み込むという方針に。 make menuconfig, make moduleするとエラー。 [_modsubdir_sound], [_mod_drivers]で怒られている。
No rule to make target '/etc/sound/dsp001.ld' needed by 'pass_boot.h'. Stop.
このファイルのパスを聞かれる部分を外してもう一度チャレンジ。 コンパイル通った。