[質問]
カーネルパッケージのアップデート方法を教えてください。
[対象となる製品のバージョン]
MIRACLE LINUX V3.0
[対象となるパッケージ]
kernel
[回答]
アップデート手順はMIRACLE LINUXのバージョンによって異なりますので、
現在使用されているMIRACLE LINUXのバージョンをご確認ください。
カーネルをアップデートする場合は、カーネルの種類やバージョンを意識する必要があります。この回答では以下の条件を想定しています。
- SMPカーネルをインストールして運用
- アップデート前のカーネルのバージョンは 2.4.21-9.30AX
- アップデート後のカーネルのバージョンは 2.4.21-9.34AX
バージョン番号などはお客さまの環境にあわせて適宜読みかえてください。
また、コマンドの例で smp という文字列が付いている箇所があります。 smp もしくは SMP は Symmetric Multi-Processors の略で、複数のプロセッサで構成されたシステム用のカーネルを意味します。
また、1つのプロセッサで構成されるシステム用のカーネルを UP (Uni-Processor)カーネルと呼びます。UPカーネルで運用している環境では、 kernel-smpパッケージをインストールする必要はありません。
以下に、カーネルのアップデート手順を示します。
1.パッケージの確認
インストールされているカーネルパッケージを確認します。
# rpm -qa | grep kernel
kernel-source-2.4.21-9.30AX
kernel-doc-2.4.21-9.30AX
kernel-2.4.21-9.30AX
kernel-smp-2.4.21-9.30AX
kernel-utils-2.4-8.37.3
kernel-pcmcia-cs-3.1.31-13
これらのパッケージのうち、kernel-utilsパッケージと、kernel-pcmcia-csパッケージは、カーネルのアップデートとは無関係です。
2.最新パッケージの入手
上記で確認したパッケージ(kernel,kernel-smp,kernel-source,kernel-doc)について最新バージョンのパッケージを入手します。
この回答例では、2.4.21-9.34AX が最新バージョンであるとします。
また、入手したパッケージを /tmp/kernel 配下に置くことにします。
# ls /tmp/kernel
kernel-2.4.21-9.34AX.i686.rpm
kernel-doc-2.4.21-9.34AX.i686.rpm
kernel-smp-2.4.21-9.34AX.i686.rpm
kernel-source-2.4.21-9.34AX.i686.rpm
※必要に応じて個々のパッケージを入手・更新することも可能ですが、可能な限りすべてのパッケージのバージョンを同じにすることを推奨します。
3. パッケージの追加
新しいバージョンのカーネルパッケージは、追加インストール(rpm -i)と、アップデートインストール(rpm -U)のどちらかの手段でインストールすることができます。
カーネルパッケージのアップデート後に、システムが正常に立ち上がらなくなった場合に備えて、古いバージョンのカーネルパッケージを残しておくためには、kernel、kernel-smpパッケージを追加インストールします。
kernel、kernel-smpパッケージなどは、既にインストールされているパッケージより新しいバージョンであれば、複数バージョンのパッケージをシステムにインストールすることが可能です。
また、kernel-sourceパッケージもカーネルモジュールのビルドに必要となる場合がありますので、合わせて追加インストールを行っておきます。
# cd /tmp/kernel
# rpm -ihv kernel-2.4.21-9.34AX.i686.rpm kernel-smp-2.4.21-9.34AX.i686.rpm kernel-source-2.4.21-9.34AX.i686.rpm
Preparing... ########################################### [100%]
1:kernel ########################################### [ 33%]
2:kernel-smp ########################################### [ 66%]
3:kernel-source ########################################### [100%]
kernel-docパッケージも複数バージョンインストールすることが可能ですが、通常は複数のバージョンをインストールしておく必要は無いため、アップデートインストールを行います。
# cd /tmp/kernel
# rpm -Uhv kernel-doc-2.4.21-9.34AX.i686.rpm
Preparing... ########################################### [100%]
1:kernel-doc ########################################### [100%]
4. GRUBの更新
新しいカーネルをデフォルトで起動できるように grubbyコマンドで/etc/grub.confのエントリーを修正します。
grubbyコマンドを利用してデフォルトで起動するカーネルを変更すると、/etc/grub.confのdefaultパラメータが変更されます。
なお、kernel、kernel-smp、kernel-hugememパッケージのインストール時に、/etc/grub.confに新しくインストールしたカーネルのエントリが追加されますので、マシン起動時のGRUBの画面で、インストールしたカーネルを選択することができます。
5. マシンの再起動
リブートして、新しいカーネルでマシンを起動します。
# /sbin/shutdown -r now
mkinitrdなどのコマンドは、kernelパッケージインストール時に実行されるため、別途実行する必要はありません。
マシン再起動後、カーネルが新しいバージョンになっていることを確認します。
# uname -r
2.4.21-9.34AXsmp
マシン再起動時に新しいカーネルによる起動で問題が発生した場合は、古いバージョンのカーネルを選択して起動し、問題の解決を行って下さい。
[参考資料]
[FAQ] カーネルパッケージについて
[更新履歴]
2004年10月28日 新規作成
|