きみもハッカーになれる

カーネルの再構築――Kernel 2.4.19-0vl22へ

 前回試みたVine Linux、2.6へのバージョンアップは、最後の最後、カーネルをアップグレードするというところで頓挫。どうしてもSCSIを認識してくれなくて、結果当然ながら起動しない、どうしたらいいか分からない、放置、という状態が一週間強ほど続いていたのでした。いや、立ち上げるだけなら以前のままのKernel 2.4.18-0vl3でも問題なかったので、特にカーネルのバージョンアップは必要なかったというのも、放置に一役買っていたのではありますが。でも、問題ないとはいっても、やりかけのままで放置しているというのはなんかきもちが悪い。というわけで、カーネルの再構築を試みてみることにしたのです。

カーネルの再構築:失敗編

 失敗といっても、失敗というわけではありません。前回はrpmでインストールしたので、今回はapt-getでインストールしようとしたんです。もう手順は簡単に、コンソールからrootでログイン後に、# init Sでシングルユーザモードに移行して、# apt-get install kernel。たくさん表示されたカーネルの中から前回と同じバージョンを選んで、# apt-get install kernel#2.4.19-0vl11。そうしたら、その最新版がもうあるっていわれたんですね。あや、困りました。# mkinitrd /boot/initrd-2.4.19-0vl11.img 2.4.19-0vl11をしても、同様の結果。ありゃー、これは以前作ったカーネルを削除しなければならんということなのか? ですができれば、そういう削除とか、取り返しのつかないことになりそうな作業は避けたい。と思って、取りあえず試してみた# apt-get install kernel-headers。すると、これだけはファイルのダウンロード及びインストールが完了したのでした。

カーネルの再構築:思いがけずKernel 2.4.19-0vl22編

 Kernel-headersのapt-getが成功したのは、実に単純な理由でした。カーネルのバージョンが違ったのです。そのバージョン足るや、実に2.4.19-0vl22。ちょっとだけリリース番号が変わってますね。そういえばVine Linux MLで、カーネルの最新版のうんぬんというやり取りがされていたような気がします。じゃあ、この際最新版を入れてみるとしようか、ヘッダファイルもインストールされちゃったし、もう後に退けない気もします。というわけで、突如カーネルのさらなるアップグレードを行うことにしたのでした。

 やり方は簡単。すでにシングルユーザモードに入っているので、そのまま# apt-get install kernel#2.4.19-0vl22でカーネルを取得。次いで、# mkinitrd /boot/initrd-2.4.19-0vl22.img 2.4.19-0vl22を実行。引き続いて、/etc/lilo.confの編集。

prompt
timeout=50
default=linux
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
message=/boot/message
linear

image=/boot/vmlinuz-2.4.19-0vl22
        label=linux
        initrd=/boot/initrd-2.4.19-0vl22.img
        read-only
        root=/dev/hda3

image=/boot/vmlinuz-2.4.19-0vl11
        label=linux.old19-11
        initrd=/boot/initrd-2.4.19-0vl11.img
        read-only
        root=/dev/hda3

image=/boot/vmlinuz-2.4.18-0vl3
        label=linux.old18-13
        initrd=/boot/initrd-2.4.18-0vl3.img
        read-only
        root=/dev/hda3

 強調部分が、今回変更された部分です。でも、前回のものというほど変わらないんですけどね。なにが悪かったのか、正直よく分かりません。lilo.confの終了後、# liloを実行。Kernel-headersはもうインストールされているので、# apt-get install kernel-headersは反映されませんでした。順序が逆になったのでちょっと心配です。再起動してみました。

 再起動される様を、目を皿のようにして見守ります。そうしたら、うまくSCSIハードディスクのドライバが読み込まれたようじゃありませんか。途中、シリアルモデムに関してkudzuがなんかいってきたのを適当にあしらって、Vine Linux 2.6は無事起動に成功しました。以下はログイン時に現れるテキストの引用です。

Vine Linux 2.6 (La Fleur de Bouard)
Kernel 2.4.19-0vl22 on an i586
login:

 こうして無事最新のカーネルで立ち上がるようになって、前回の苦労と苦悩はなんだったのだろうとちょっと拍子抜けしながら、でも最新カーネルの恩恵を受けられるほどLinuxが使えるわけではない僕。もっと勉強が必要です。ちょっとずつでもいいから、時間を取るように心掛けましょう。


わたしの愛した機械へ トップページに戻る

公開日:2002.11.18
最終更新日:2002.11.24
webmaster@kototone.jp
Creative Commons License
こととねは、クリエイティブ・コモンズ・ライセンス(表示 - 継承 2.1 日本)の下でライセンスされています。