カーネルをアップグレードする(apt-getコマンド)

First Edition 2003.10.5

apt-getコマンドでカーネルをアップグレードする方法です。

目次

 1 apt-getコマンドを使う(対象:2.5、2.6)(03/10/5)
 2 liloを設定する(対象:2.5、2.6)(03/10/5)
 3 新しいカーネルの起動を確認する(対象:2.5、2.6)(03/10/5)


apt-getコマンドを使う

apt-getコマンドを使って、カーネルをアップグレードします。rpmコマンドを使うより簡単にできます。
以下のようにします。
# apt-get update
# apt-get install kernel
ファイル依存を処理しています... 完了
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了    
パッケージ kernel は以下のパッケージで提供されているバーチャルパッケージです。
  kernel22#2.2.25-0vl3 2.2.25-0vl3
  kernel-smp#2.4.20-0vl29.1 2.4.20-0vl29.1
  kernel-smp#2.4.20-0vl24.2 2.4.20-0vl24.2
  kernel-smp#2.4.20-0vl24.1 2.4.20-0vl24.1
  kernel-smp#2.4.19-0vl26 2.4.19-0vl26
  kernel-smp#2.4.19-0vl22 2.4.19-0vl22
  kernel-BOOT#2.4.20-0vl29.1 2.4.20-0vl29.1
  kernel-BOOT#2.4.20-0vl24.2 2.4.20-0vl24.2
  kernel-BOOT#2.4.20-0vl24.1 2.4.20-0vl24.1
  kernel-BOOT#2.4.19-0vl26 2.4.19-0vl26
  kernel-BOOT#2.4.19-0vl22 2.4.19-0vl22
  kernel#2.4.20-0vl29.1 2.4.20-0vl29.1
  kernel#2.4.20-0vl29.1 2.4.20-0vl29.1
  kernel#2.4.20-0vl24.2 2.4.20-0vl24.2
  kernel#2.4.20-0vl24.2 2.4.20-0vl24.2
  kernel#2.4.20-0vl24.1 2.4.20-0vl24.1
  kernel#2.4.20-0vl24.1 2.4.20-0vl24.1
  kernel#2.4.19-0vl26 2.4.19-0vl26
  kernel#2.4.19-0vl26 2.4.19-0vl26
  kernel#2.4.19-0vl22 2.4.19-0vl22
  kernel22#2.2.20-0vl10 2.2.20-0vl10
  kernel-smp#2.4.19-0vl11 2.4.19-0vl11
  kernel-BOOT#2.4.19-0vl11 2.4.19-0vl11
  kernel#2.4.19-0vl11 2.4.19-0vl11
インストールするパッケージを明示的に選択する必要があります。
E: Package kernel has no installation candidate
このように、カーネルをアップグレードするときには、バージョンを明示しなさいと言われます。
カーネルは、アップデートした後に起動できなくなる可能性がありますので、正確にはアップデートではなく、新しい カーネルをインストールすることになります。したがって、複数のカーネルで起動できる状態になるわけです。

そこで、最新の2.4系カーネルをインストールします。
# apt-get install kernel#2.4.20-0vl29.1
インストールしたいカーネルのバージョンを上記のように指定します。kernelの文字列の次に#をつけてバージョン名を 指定します。
なお、その他のカーネルは以下のようになっています。必要に応じてインストールしてください。
  1. インストールディスク用のカーネル(kernel-BOOT)
  2. マルチCPU用のカーネル(kernel-smp)
  3. カーネルバージョン2.2系(kernel22)

liloを設定する

新しくインストールしたカーネルで起動できるようにする為に、liloを設定します。青い部分を変更、赤い部分を 追加します。

/etc/lilo.conf
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
message=/boot/message
append="apm=on hdb=ide-scsi max_scsi_luns=2"
default=linux-new

image=/boot/vmlinuz-2.4.19-0vl11
    label=linux-old
    initrd=/boot/initrd-2.4.19-0vl11.img
    read-only
    root=/dev/hda3
image=/boot/vmlinuz-2.4.20-0vl29.1
    label=linux-new
    read-only
    root=/dev/hda3


other=/dev/hda1
    label=dos

新しいカーネルで起動するには、liloの選択画面でlinux-newを選択してリターンを押して起動します。
もし起動しなかった場合は、liloの選択画面でlinux-oldを選択してリターンを押して起動すれば、以前のカーネルで起動させることができます。

ファイルを修正後、liloを実行します。1行目が/dev/hdaとなっていますので、プライマリマスターのMBRにliloをインストールすることになります。 ここは自分の環境に合うように変更してください。通常は/dev/hdaで大丈夫だと思います。
# /sbin/lilo

新しいカーネルの起動を確認する

以下のようにして新しいカーネルの起動を確認しましょう。

起動する際に、liloのグラフィカルメニューが出ると思います。その中に”linux_new”というメニューがあるはずなので、 カーソルで選択し、起動します。起動したら、以下のコマンドにより、カーネルのバージョンを確認します。
$ uname -r
2.4.20-0vl29.1
この様に、新しいカーネルバージョンが表示されればOKです。


[HOME]
since 2001.4.22