MIRACLE

メールサービス申込 ユーザー登録&ログイン パートナー情報
お問い合わせ FAQ サイトマップ
MIRACLE LINUXの特長 製品紹介 サービス案内 購入 サポート 技術フォーラム

テクノロジー情報

2004年10月28日
カーネルパッケージのアップデートについて (MIRACLE LINUX V3.0)
Miracle Linux V3.0 対応

[質問]

カーネルパッケージのアップデート方法を教えてください。

[対象となる製品のバージョン]

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のエントリーを修正します。

    • /etc/grub.confの 1番目 のエントリのカーネルをデフォルトで起動したい場合
          # /sbin/grubby --set-default=0
          
    • /etc/grub.confの n番目 のエントリのカーネルをデフォルトで起動したい場合
          # /sbin/grubby --set-default=(n-1)     ※ (n-1)には数値を指定します。3番目の場合は2。
          

    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日 新規作成

会社情報 採用情報 個人情報保護方針 情報セキュリティ基本方針 商標等取り扱い事項 English
Copyright(c)2000-2013 MIRACLE LINUX CORPORATION. All Rights Reserved.