作業メモ
カーネルアップデートする。今入ってるのが2.6.17だからほとんど変わらないが勉強ついでに。
%su -
rootpasswd:
カーネルのソースは/usr/srcに展開。
#tar jxf linux-2.6.18.tar.bz2 -C /usr/src/
ちなみに/usr/src/linux2.6.18の中身はこんな感じ
ここをカレントディレクトリにしとく。
[root@GX150 linux-2.6.18]# ls -al
total 452
drwxr-xr-x 19 root root 4096 Sep 20 12:42 .
drwxr-xr-x 4 root root 4096 Sep 30 17:59 ..
-rw-r--r-- 1 root root 542 Sep 20 12:42 .gitignore
-rw-r--r-- 1 root root 18693 Sep 20 12:42 COPYING
-rw-r--r-- 1 root root 89517 Sep 20 12:42 CREDITS
drwxr-xr-x 58 root root 4096 Sep 20 12:42 Documentation
-rw-r--r-- 1 root root 1273 Sep 20 12:42 Kbuild
-rw-r--r-- 1 root root 72925 Sep 20 12:42 MAINTAINERS
-rw-r--r-- 1 root root 47674 Sep 20 12:42 Makefile
-rw-r--r-- 1 root root 16538 Sep 20 12:42 README
-rw-r--r-- 1 root root 3065 Sep 20 12:42 REPORTING-BUGS
drwxr-xr-x 26 root root 4096 Sep 20 12:42 arch
drwxr-xr-x 2 root root 4096 Sep 20 12:42 block
drwxr-xr-x 2 root root 4096 Sep 20 12:42 crypto
drwxr-xr-x 61 root root 4096 Sep 20 12:42 drivers
drwxr-xr-x 58 root root 4096 Sep 20 12:42 fs
drwxr-xr-x 40 root root 4096 Sep 20 12:42 include
drwxr-xr-x 2 root root 4096 Sep 20 12:42 init
drwxr-xr-x 2 root root 4096 Sep 20 12:42 ipc
drwxr-xr-x 5 root root 4096 Sep 20 12:42 kernel
drwxr-xr-x 5 root root 4096 Sep 20 12:42 lib
drwxr-xr-x 2 root root 4096 Sep 20 12:42 mm
drwxr-xr-x 36 root root 4096 Sep 20 12:42 net
drwxr-xr-x 9 root root 4096 Sep 20 12:42 scripts
drwxr-xr-x 4 root root 4096 Sep 20 12:42 security
drwxr-xr-x 17 root root 4096 Sep 20 12:42 sound
drwxr-xr-x 2 root root 4096 Sep 20 12:42 usr
前の設定を反映させるために make oldconfigで設定を行う。
新しく増えた設定項目だけ設定すればおk。めんどくさいから全部enter押してみた。
というか項目多すぎる。
ソースの依存関係の確認を行う
make dep
不要なファイルを削除しとく
make clean
そしてカーネルイメージを作成
make bzimage
時間かかるから放置。
終ったらvmLinuzxが作成される。
次はカーネルモジュールの作成
make modules
これも時間がかかるから放置。
Cel400MHZじゃ遅い
終ったらカーネルモジュールのインストール
make modules_install
初期RAMディスクを作成する。
[root@GX150 linux-2.6.18]# mkinitrd /boot/initrd-2.6.18.img 2.6.18
LPICLv2教科書だと、SCSIデバイス上やRAIDデバイス上にある場合などでは?と書いてあるが、
無い状態でやったらKernelPanic起こしますた。無いと駄目っすね。こいつの役割はext-root-mini-HOWTO-2で。
カーネルイメージのできあがり、そして配置。
arch/アーキテクチャ名(i386)/bootにbzImageの名で入ってる
名前かえて/bootに配置
[root@GX150 linux-2.6.18]# cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.18
カレントディレクトリにあるsystem.mapも名前をあわせて配置
ブートローダ(俺はGRUBを使用)に以下を追加して読み込めるようにする。
title Fedora Core (2.6.18)
root (hd0,0)
kernel /vmlinuz-2.6.18 ro root=/dev/VolGroup00/LogVol00
initrd /initrd-2.6.18.img
これで再起動し、ブートローダで2.6.18を選べばOK
########カーネルにパッチを当てる方法 今回はやらない########
展開して出来た"/usr/src/linux-2.4.20/"にパッチファイルをコピーします。
#cp patch-2.4.21-pre7.gz /usr/src/linux-2.4.20/
パッチを適用します。
#zcat patch-2.4.21-pre7.gz | patch -p1
これでパッチが適用されます。
*bz2の場合は、
#bzip2 -d patch-2.4.21-pre7.bz2
#cat patch-2.4.21-pre7|patch -p1
########コピペ終わり##########
どこからコピペしたのかわからないけどメモしとく。どこだっけなあ・・・
コメント