MENU

J2EE環境構築編

J2EE体験編

カーネル

追加情報

  • 最新のバージョンは2.6.9です
  • 相変わらず、一般ユーザ権限でcdrecordを利用できません

pciデバイスについて、どのドライバを用意すれば良いのか分からないこともあると思います。
そんな時の対処法は

  • cat /proc/pci|lessを実行する
  • lspciを実行する
  • /proc/bus/pci/00(または01)の中にあるファイルを16進数エディタで覗いてみる
  • windowsが残っていれば、windowsを起動してみて、コントロールパネルあたりを調べてみる
  • 箱を開けてチップを直接目視する
  • カード類のドライバを全部カーネルに組み込む
などです。
重要なのは、「どのチップを使っているか」であって、「どのメーカか、どのカード(商標名)か」ではない、ということです。
カードの商標名で検索しても、有用な情報を得られないこともしばしばなので、注意しましょう。
それから、あまり最新のものはドライバが無いこともあり得ます。

カーネルのバージョンアップ

2.6系列が出ているので、これをインストールします。
が、module-init-toolsが必要なのであらかじめインストールしておきましょう。

ソースコードの入手

ftp://ftp.ring.gr.jp/
辺りからソースを入手しましょう。

展開

通常、カーネルのソースは/usr/src以下に配置されるのでそのようにします。
/usr/srcに書き込むには特権が必要なので、suしましょう。

su
tar zxfv linux-2.6.7.tar.gz -C /usr/src
cd /usr/src

リンクを張ります。

rm linux
ln -s linux-2.6.7 linux
ln -s /usr/src/linux/include/linux /usr/src/linux/include/linux
ln -s /usr/src/linux/include/asm-i386 /usr/include/asm
ln -s /usr/src/linux/include/asm-generic /usr/include/asm-generic

このあたりの作業を自動化してくれる便利なスクリプトは無いものでしょうか。
まあ、たいした手間ではないので先に進みます。

make menuconfig

カーネルのセッティングを設定します。

make menuconfig

選択可能なオプションは膨大な数に昇ります。注意して設定しないと再起動できなくなります。
注意が必要なのは

Loadable module support -> Enable loadable module support

を組み込むこと、

Device Drivers ->ATA/ATAPI/MFM/RLL support
Networking support -> Ethernet (10 or 100Mbit) ->
Sound ->Sound card support
File systems

で、自分のマシンに必要なものを忘れないこと位でしょうか。
お好みでusbやfirewireを組み込みまたはモジュール化するのもいいでしょう。

make

make

を実行すると先ほどの設定に応じてコンパイルされます。

make install modules_install

make install modules_install

を実行すると、コンパイルされたカーネルとモジュールがインストールされます。
最近はやりのGrubを使っている場合はうまく行かないこともあります。そんなときは、

make bzImage modules modules_install

としましょう。
arch/i386/boot/bzImageにカーネルのイメージが作成されるので、/(root)なりどこなりの任意の場所にコピーします。
それから、/etc/grub.confを書き換えて、今回作成したイメージを読み込むようにします。

root (hd1,1)
kernel (hd1,1)/bzImage root=/dev/hda1 ro

のような記述を加えましょう。
(hd1,1)とか/dev/hda1とかは、それぞれの環境に応じたものにかえておく必要があります。

できあがり

これで終了です。