Kernelのアップグレード(2.4系列)

インストール時のカーネルは2.4.18でちょっと古いので、最新(2004.3.27現在)のカーネル2.4.25にアップグレードしました。

このページの作業は全てrootで行います(本当はrootでなくてもよいところもあるのですが)。

kernel-packageのインストール

Debianでは、カーネルもパッケージで管理します。Kernelパッケージ作成用のツールがkernel-packageです。以下のコマンドを入力して、kernel-packageをインストールします。

# apt-get install kernel-package

カーネルソースの取得

2.4.25のカーネルを取得します。私はいつもカーネルの構築は/usr/srcでやってるのでそこに移動してから行います。サイズは30MB程です。

# cd /usr/src
# wget http://ring.nihon-u.ac.jp/pub/linux/kernel.org/kernel/v2.4/linux-2.4.25.tar.bz2

カーネルソースの展開

取得したカーネルソースを展開します。

# tar xfvj linux-2.4.25.tar.bz2

追加モジュールの取得

標準のモジュール以外に必要なものがある場合はここで取得して、ソースコードを用意しておきます。

普通の人は追加モジュールは必要ないと思いますが、nVidiaのビデオカードを使っている人は、nVidiaのドライバソースを取得しておきましょう。

# apt-get install nvidia-kernel-src (Woodyの場合)
# apt-get install nvidia-kernel-source (Sargeの場合)

nVidiaドライバソースがインストールされると、/usr/srcにnvidia-kernel-src.tar.gz(nvidia-kernel-source.tar.gz)というファイルが出来ますので展開しておきます。

# cd /usr/src
# tar xfvz nvidia-kernel-src.tar.gz (Woodyの場合)
# tar xfvz nvidia-kernel-source.tar.gz (Sargeの場合)

カーネルソースのコンフィグレーション

カーネルのコンフィグレーションは普通と同じです。選択項目がありすぎてとてもではないですが、ここでは説明できません。細かいところは、雑誌や本などを参考にしてください。

コンフィグレーションの方法は、いろいろあるのですが私はコンソールで利用できる方法を使いました。ただ、インストール直後ではライブラリが足りないのでそれを追加する必要があります。

# apt-get install libncurses5-dev
# cd /usr/src/linux-2.4.25
# make menuconfig

nVidiaドライバを使いたい人は、"Character devices"の"Direct Rendering Manager (XFree86 DRI support"を有効にしておきましょう。

インストールのときにファイルシステムをReiserFSでフォーマットした人は、"File Systems"のところで"Reserfs support"を有効にしないと、大変なことになります。

また、あとで高解像度のコンソールが利用できるように、フレームバッファを有効にしておくのを忘れないようにしましょう("Console drivers"のところから"Support for frame buffer devices"や"VESA VGA graphic console"などを有効にします)。

カーネルソースの構築

次のように入力して、カーネルの構築を開始します。XXXXのところはホスト名か何かに置き換えると良いでしょう(kernel-sourceはなくてもかまいません)。CPUによってはかなり時間がかかりますので気長に待ちましょう。

# make-kpkg --revision=XXXX.1 kernel-image modules-image kernel-headers kernel-source

パッケージの確認

カーネルの構築が終了したら、作成されたパッケージを確認しましょう。

# cd /usr/src
# ls *.deb
kernel-headers-2.4.25_XXXX.1_i386.deb
kernel-image-2.4.25_XXXX.1_i386.deb
kernel-source-2.4.25_XXXX.1_all.deb
nvidia-kernel-2.4.25_1.0.2880-1+XXXX.1_i386.deb (Woodyの場合)
nvidia-kernel-2.4.25_1.0.5336-6+XXXX.1_i386.deb (Sargeの場合)

パッケージのインストール

作成されたパッケージをインストールします。

# dpkg -i kernel-image-2.4.25_XXXX.1_i386.deb
# dpkg -i nvidia-kernel-2.4.25_1.0.2880-1+XXXX.1_i386.deb (Woodyの場合)
# dpkg -i nvidia-kernel-2.4.25_1.0.5336-6+XXXX.1_i386.deb (Sargeの場合)
# dpkg -i kernel-source-2.4.25_XXXX.1_all.deb
# dpkg -i kernel-headers-2.4.25_XXXX.1_i386.deb

起動時のモジュールの設定

起動時に必要なデバイスドライバなどをモジュールにした人は、/etc/modulesにそのモジュール名を書き加えておきます。

以下に、私の設定を示します(ネットワークのデバイスドライバ、nVidiaのドライバ、オーディオのデバイスドライバです)。

8139too
NVdriver (Woodyの場合)
nvidia (Sargeの場合)
via82cxxx_audio

/etc/modulesを書き換えたら以下のコマンドを実行して設定を反映させなければならないようです。

# update-modules

リブート

ここまでの作業を順調に行っていれば、リブートすることによって新しいカーネルが利用できるはずです。

もし何らかのミスで起動しなくなってしまったら、GRUBのメニューで"Linux (Old Version)"を選択すれば起動できます(GRUBが私のように設定されている場合です)。あせらずにカーネルの構築をやり直しましょう。

フォローする