[Q]
LinuxMLD3 でカーネルの再構築をしたいのですが
[A]
カーネルを再構築するためにはカーネルのソースが必要になります。
フルインストールした場合には /usr/src 以下にありますので問題ないのですが、
標準インストールした場合や何らかの理由で消してしまったりした場合には、
LinuxMLD3 の 1 枚目の CD-ROM からコピーする必要がありますので、
以下にある Appendix を参考にコピーしてください。
# 2 枚目 CD-ROM にあるのはバージョン 2.0.34 のものです。
# 2.0.34 で良い場合には 2 枚目の CD-ROM の rpm package をインストールすればよいでしょう。
以下、root (権限)で作業してください。
また、ここでは簡単な説明しかしませんので、
詳しいことは /usr/src/linux/README などを読んでみてください。
カーネルソースが準備できているとして、
$ cd /usr/src/linux
$ make xconfig
を実行して configuration file を作成します。
おそらく、
LinuxMLD3 のデフォルトの設定を元に変更を加えていくほうが良いと思いますので、
Load Configuration from file とかいうのが右下のほうにあると思いますので
そこのボタンを押して、linuxmld3.conf と入力します。
# デフォルトの configuration file は /usr/src/linux/linuxmld3.conf です。
次に変更したい設定をメニューから選びます。
例えばAPMを組み込むには charcter device を選び
APM y
power off y
等というようにします。
Save & Exit でメニューを終了すると .config が作成され、
これを元にカーネルの作成が行われます。
$ make dep
$ make zImage
でカーネルのコンパイルを行います。
続いて、
$ make modules
$ make modules_install
$ depmod -a
でモジュールを作り直しインストールします。
新しくできた zImage というファイルが新しいカーネルです。
これを今まで使っていたカーネル (vmlinuz) と入れ換えます。
例えば、Windows からブートしている場合、
カーネルは /bootfs/mld3load にあると思いますので、
$ mv vmlinuz vmlinuz.org
$ cp /usr/src/linux/arch/i386/boot/zImage /bootfs/mld3load/vmlinuz
で、入れ換えられると思います。
このあと、
システムを再起動して MS-DOS モードから LinuxMLD3 を起動するときには、
新しくつくったオリジナルカーネルが動いてくれることでしょう。
上記の例では、
デフォルトのカーネルは windows から見た時に \mld3load\vmlinuz.org
として残っておりますので、
新しいカーネルに何か問題があって元のカーネルに戻したい時には
vmlinuz.org を vmlinuz にリネームするか、
\mld3load\kernel.par の vmlinuz を vmlinuz.org に変更してみてください。
[Appendix]
LinuxMLD3 ではデフォルトで使われている Linux kernel 2.0.35 の kernel-source
などが「パッケージとしては」含まれていないようです。
# 2.0.34 はありますが。
そのため、
再構築に必要なソフトをインストールするとともに、
カーネルソースを以下のようにしてコピーして持ってくる必要があります。
再構築に必要なソフトは
binutil
gcc-2.7.2.3-base
gcc-2.7.2.3
kernel-headers
glibc-devel
になります。
これらのインストールは上記の順番にインストールすれば良く、
そんなに難しいことはないと思いますので省略します。
もし、難しいと感じるようなら
もう一度フルインストールを選んでインストールしなおす方が良いでしょう。
以下の作業は root 権限で行ってください。
まず、1枚目の CD-ROM を CD-ROM ドライブにセットして、
$ mount -t iso9660 /dev/cdrom /mnt/cdrom
とやってマウントします。
$ cd /mnt/cdrom/image
でディレクトリを移動し、
$ ls
を実行すると
mld3loop mld3loop.sm
と 2 つのファイルがあると思います。
mld3loop がフルインストール版、
mld3loop.sm が標準インストール版の「イメージ」になり、
mld3loop の方にバージョン 2.0.35 のカーネルのソースがあります。
loop device /dev/loop1 が未使用な場合、
$ losetup /dev/loop1 /mnt/cdrom/image/mld3loop
$ mount -t ext2 /dev/loop1 /mnt/disk1
というようにして mld3loop file を /mnt/disk1 にマウントします。
# /dev/loop1 や /mnt/disk1 は状況に応じて適当なものにかえて行ってください。
$ cp -a /mnt/disk1/usr/src/ /usr/src/
で usr/src 以下にあるカーネルソースファイルをコピーすれば目的達成です。
$ cd
$ umount /mnt/disk1
$ losetup -d /dev/loop1
$ umount /mnt/cdrom
とやって CD-ROM をアンマウントしてカーネルの再構築にすすみましょう。v(^^)
戻る