カーネルを導入する

カーネルのコンパイル

カーネルコンパイルを実行します。

# cd /usr/src/linux
# make dep <= 依存関係のチェック
# make clean <= 不要ファイルの削除
# make -j2 bzImage <= カーネルコンパイル

エラーなくコンパイルが終了したら、作成されたカーネルイメージbzImageとSystem.mapを/usr/local/src/origdev/bootディレクトリにコピーします。

# cp -p System.map /usr/local/src/origdev/boot/
# cp -p arch/i386/boot/bzImage /usr/local/src/origdev/boot/mylinux

▼確認

[root@localhost linux]# ls -l /usr/local/src/origdev/boot/
合計 1436
-rw-r--r--    1 root     root       390086 Oct 25 23:40 System.map
-rw-r--r--    1 root     root      1068796 Oct 25 23:40 mylinux
[root@localhost linux]#

カーネルモジュールのコンパイルと導入

カーネルのモジュール(デバイスドライバ)もコンパイルし、/usr/local/src/origdev/lib/modules/2.4.29-mylinuxディレクトリ配下に導入します。

# make -j2 modules
# INSTALL_MOD_PATH=/usr/local/src/origdev make modules_install

▼確認

[root@localhost linux]# ls -l /usr/local/src/origdev/lib/modules/2.4.29-mylinux/
合計 72
lrwxrwxrwx    1 root     root           21 Oct 26 00:10 build -> /usr/src/linux-2.4.29/
drwxr-xr-x    6 root     root         4096 Oct 26 00:10 kernel/
-rw-r--r--    1 root     root         4587 Oct 26 00:10 modules.dep
-rw-r--r--    1 root     root           31 Oct 26 00:10 modules.generic_string
-rw-r--r--    1 root     root           73 Oct 26 00:10 modules.ieee1394map
-rw-r--r--    1 root     root           81 Oct 26 00:10 modules.isapnpmap
-rw-r--r--    1 root     root           29 Oct 26 00:10 modules.parportmap
-rw-r--r--    1 root     root        15779 Oct 26 00:10 modules.pcimap
-rw-r--r--    1 root     root           24 Oct 26 00:10 modules.pnpbiosmap
-rw-r--r--    1 root     root        18237 Oct 26 00:10 modules.usbmap
drwxr-xr-x    2 root     root         4096 Oct 26 00:10 pcmcia/
[root@localhost linux]#

rsyncをコンパイルする

メインメモリ上にRAMディスクを作成し、MyLinuxの動作に必要なファイルを転送させてMyLinuxを起動します。rsyncはその転送のために使います。
rsyncはMyLinuxが起動する前に実行されるため、必要なライブラリ(glibc)はスタティックリンクさせてコンパイルします。

# cd /usr/local/src/origsoft
# tar xzvf rsync-2.6.3.tar.gz
# cd rsync-2.6.3
# ./configure
# make "CC = gcc -static"

rsyncのインストールは後で行います。

変更 2008.10.25
2008.07.01