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.
このファイルのパスを聞かれる部分を外してもう一度チャレンジ。
コンパイル通った。