Top/Linux/Linux/カーネル再構築

カーネル再構築はてなブックマーク

はじめから

linux-2.4.29.tar.bz2 をダウンロード

mv linux-2.4.29.tar.bz2 /usr/src/
cd /usr/src/
tar jxvf linux-2.4.29.tar.bz2

つづきから

patch-2.4.29.bz2 をダウンロード

mv patch-2.4.29.bz2 /usr/src/
cd /usr/src/
bunzip2 patch-2.4.29.bz2
cd linux-2.4.26
make clean
cd ..
cp -R linux-2.4.26 linux-2.4.29
cd linux-2.4.29/
patch -p1 < ../patch-2.4.27
patch -p1 < ../patch-2.4.28
patch -p1 < ../patch-2.4.29
cd ..

共通

rm -i linux
ln -s linux-x.x.x linux
cd linux

コンフィギュレーション

次の2通りの方法がある。

  1. 初期化
    make mrproper
  2. 既存のものを活用
    1. 普通は
      cp /usr/src/linux-x.x.x/.config .
    2. 上記がない場合は
      cp /boot/config-x.x.x .config

引継ぎ

make oldconfig
make menuconfig
make dep; make clean

コンパイル

make bzImage
make modules


現行カーネルの再構築を行う場合で、モジュール増減を行なった場合は次を実行

rm -rf /lib/modules/`uname -r`


モジュールのインストール

make modules_install
depmod -ae

イメージのコピー

cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-x.x.x
cp /usr/src/linux/System.map /boot/System.map-x.x.x
ln -sf /boot/System.map-x.x.x /boot/System.map
mkinitrd -f /boot/initrd-x.x.x.img x.x.x

GRUBの設定

vi /boot/grub/grub.conf
title Red Hat Linux (2.4.26)
        root (hd0,0)
        kernel /vmlinuz-2.4.26 ro root=/dev/hda5
        initrd /initrd-2.4.26.img

こんな感じで既存のものの上に追加。

参考

Amazon

差分 一覧