[質問]
カーネルパッケージのアップデート方法を教えてください。
[対象となる製品のバージョン]
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 新規作成
|