kernelにパッチを当てる
 
 
2003/12/5
written Komuro

まず、下記サイトからパッチをダウンロードした。

http://www.kernel.org/

(siteイメージ)


ここで、 2.4.23とかいてある数字をクリックするとパッチをダウンロードできる。

ちなみにFullSourceをダウンしたい場合は、Vと書いてあるところをクリックすると、FullSourceがダウンロードできる。

パッチをダウンしたら、以前FullSourceを展開した場所にコピーする。(/usr/src/)←通常ソースが展開される場所

注)RedHatシリーズをそのままインストールした初期時点では、
/usr/src/ 以下にkernelのソースが無かったので、はじめて再構築するのであれば、FullSourceをダウンロードしてしょっぱなから構築しなおした方がいいとおもいます。

今回は/usr/src 上でlinux-2.4.22.tar.bz2を展開した、linux-2.4.22というディレクトリィに今回ダウンしたpatch-2.4.23.bz2をコピーした。
これは、趣味の問題だと思うんだが、ln -s /usr/src/linux-2.4.22 /usr/src/linux とシンボリックリンクを貼って、リンク上で作業をするのが通例のようです。

 
そして linux-2.4.22ディレクトリィにpatch-2.4.23.bz2をコピーしたら、次のコマンドを打ちました。(/usr/src/linux/linux-2.4.22上を前提に書いてる)
bzcat patch-2.4.23.bz2 | patch -p1


これでパッチが順調にあたるのですが、まだ1つだけ作業が残っています。
linux-2.4.22又は、シンボリックリンクを貼った linuxディレクトリィの中を覗くとMakefileがあると思うので、これを修正しました。

修正個所
VERSION = 2
PATCHLEVEL = 4
SUBLEVEL = 23 ← 今回2.4.23のパッチを当てたので23にする。
 
これで、作業は終わりました、
make menuconfig で好みのオブジェクトを選んでください。無ければそのまま、セーブして終了してください。(X環境の場合は make xcinfig)


以下コンパイル手順をしまします
make dep
make bzImage
make modules
make modules_install
make install
 

この一連の作業が終わったら、念のため、/boot/grub/grub.confを確認します。
今回、自分の環境は、/dev/hda2 が / のマウントポイントだったので、/boot/grub/grub.confの内容は以下のように書き換えた。

 
title Red Hat Linux (2.4.23)
root (hd0,0)
kernel /vmlinuz-2.4.23-VPN ro root=/dev/hda2
initrd /initrd-2.4.23.img
(場合によっては、初期値は、以下のようになってる可能性もある)
kernel /vmlinuz-2.4.23 ro root=LABEL=/
 
これらの作業で、無事に、kernelイメージと設定が出来てるので、rebootなりhalt -p なりで、再起動かけて、grubメニューで新しいカーネルが表示されてれば、今回のアップデートは終了である。
 
 
 



 
 
 
 
kernelにパッチを当てる
 
 
2003/12/5
written Komuro