[質問]
カーネルパッケージのアップデート方法を教えてください。
[対象となる製品のバージョン]
MIRACLE LINUX Standard Edition V2.1 Update3 以降
 
[対象となるパッケージ]
kernel
 
[回答]
アップデート手順は MIRACLE LINUX の各バージョンにより異なりますので、ご使用のMIRACLE LINUX のバージョンをご確認ください。
 
本記事は、MIRACLE LINUX Standard Edition V2.1 Update3 以降の
バージョンについてのご案内となります。
 
また、本記事では、以下の構成を例としてご案内しております。
バージョン番号などはお客様の環境にあわせて適宜お読み変え下さい。
 
  - SMPカーネルをインストールして運用
 
  - アップデート前のカーネルのバージョンは 2.4.9-e.25.60ml
 
  - アップデート後のカーネルのバージョンは 2.4.9-e.25.98ml
 
 
注) 緊急時用ブートディスクについて
 
旧バージョンでは、カーネルアップデートの際、緊急時用ブートディスクの作成をお勧めしておりましたが、現行のバージョンでは、作成した緊急時用ブートディスクのイメージが、フロッピーディスクに収まり切らない場合があり、お勧めしておりません。
 
また、緊急時用ブートディスクの機能はインストール CD のレスキューモードにて代用頂けます。 
インストール CD のレスキューモードのご使用方法につきましては下記の記事をご参照下さい。
 
  [FAQ] インストール CD をレスキューディスクの代替として使用する方法
 
 1. パッケージの確認
インストールされているカーネルパッケージを確認します。
 
#rpm -qa | grep kernel
kernel-2.4.9-e.25.60ml
kernel-smp-2.4.9-e.25.60ml
kernel-headers-2.4.9-e.25.60ml
kernel-doc-2.4.9-e.25.60ml
kernel-source-2.4.9-e.25.60ml
 
2. カーネルパッケージの入手
上記で確認した全てのパッケージについて、アップデート情報ページより目的のバージョンのパッケージを入手します。
 
今回の例では、2.4.9-e.25.98ml が目的のバージョンとします。 
また、入手したパッケージを /tmp/kernel に置くことにします。
  
# ls /tmp/kernel
kernel-2.4.9-e.25.98ml.i686.rpm
kernel-smp-2.4.9-e.25.98ml.i686.rpm
kernel-headers-2.4.9-e.25.98ml.i686.rpm
kernel-doc-2.4.9-e.25.98ml.i686.rpm
kernel-source-2.4.9-e.25.98ml.i686.rpm
 
注)必要に応じて個々のパッケージを入手・更新することも可能ですが、出来る限りすべてのパッケージのバージョンを同じにすることをお勧めします。
3. パッケージのインストール
rpm コマンドを使用してパッケージのインストールを行います。
 
カーネルのアップデートでは、新しいバージョンで問題が生じた場合の対処の為、古いバージョンのパッケージは残し、目的のバージョンを追加することをお勧めします。 
そのため、rpm コマンドでは、下記の様に、にオプション -ivh を付け実行します。
  
# cd /tmp/kernel
# rpm -ivh kernel-2.4.9-e.25.98ml.i686.rpm
kernel-smp-2.4.9-e.25.98ml.i686.rpm kernel-source-2.4.9-e.25.98ml.i686.rpm
Preparing...                ###########################################
[100%]
   1:kernel                 ###########################################
[ 33%]
   2:kernel-smp             ###########################################
[ 66%]
   3:kernel-source          ###########################################
[100%]
 
また、パッケージの構成により古いバージョンを残し、追加することが出来ないパッケージについては、下記の様にrpm コマンドにオプション -Fvh を付けアップグレードを行います。
 
# rpm -Fvh  kernel-doc-2.4.9-e.25.98ml.i686.rpm
kernel-headers-2.4.9-e.25.98ml.i686.rpm
Preparing...                ###########################################
[100%]
   1:kernel-doc             ###########################################
[100%]
   2:kernel-headers         ###########################################
[100%]
 
手順4. lilo の更新
現行バージョンでは、パッケージの追加にて/etc/lilo.conf にエントリが自動的に追加されます。また、新しいカーネルで起動できるよう /etc/lilo.conf を変更します。
 
下記が変更例となります。「default=」の設定値に目的のバージョンのイメージラベルをご指定下さい。(赤字の箇所)
 
○ 編集例 
 
boot=/dev/sda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
linear
default=e.25.98mlsmp
image=/boot/vmlinuz-2.4.9-e.25.98mlsmp
        label=e.25.98mlsmp
        initrd=/boot/initrd-2.4.9-e.25.98mlsmp.img
        read-only
        root=/dev/sda5
image=/boot/vmlinuz-2.4.9-e.25.98ml
        label=e.25.98ml
        initrd=/boot/initrd-2.4.9-e.25.98ml.img
        read-only
        root=/dev/sda5
image=/boot/vmlinuz-2.4.9-e.25.60mlsmp
        label=linux-old
        initrd=/boot/initrd-2.4.9-e.25.60mlsmp.img
        read-only
        root=/dev/sda5
image=/boot/vmlinuz-2.4.9-e.25.60ml
        label=linux-up-old
        initrd=/boot/initrd-2.4.9-e.25.60ml.img
        read-only
        root=/dev/sda5
設定を反映させる為、/etc/lilo.conf 変更後、下記コマンドを実行します。
# /sbin/lilo -v
 
手順6. マシンの再起動
# shutdown -r now
 
注)mkinitrd などのコマンドは、rpm コマンドによって実行されるので、新たに
実行する必要はありません。
 
マシン再起動後、カーネルが新しいバージョンになっていることを確認します。
 
# uname -r
2.4.9-e.25.98mlsmp
 
マシン再起動時に新しいカーネルで問題のある場合は、システムを再起動しLILOの画面にて、古いカーネルのイメージラベル(linux-old)を選択して起動し問題の解決を行ってください。
 
[参考資料]
[FAQ] インストール CD をレスキューディスクの代替として使用する方法 
[FAQ] カーネルパッケージのアップデートについて(MIRACLE LINUX V2.x)
 
[更新履歴]
2007/01/11 新規作成
 
 
 |