CetOSのカーネルを2.6.35にアップデート

CnetOSのKVMを使って、OpenIndianaをインストールしようとすると、どうしてもLiveCDのGnomeが起動できない。できてもディスクアクセスが、遅すぎて使い物にならない(インストールで2時間放置したけど進捗が2%から進まなかった)。

きっとQEMU-KVMのバージョンが古いからだ! ってことで、バージョンアップを始めた。しかしYumで提供されている、最新のカーネルは2.6.18-194.32.1.el5で、これだとKVMのVer.0.14が使えない。

そのためKVMを新しいバージョンにするには、CentOSのカーネルも新しくしなければならないことに気がついた。

参考サイトは

まず、参考サイトにあるELRepoを使うための設定。

Get startedのPublic Keyを読み込ませます。(カーネルインストール時に不審な物と思われないため)

rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org

本当は次に、レポジトリを使うためのrpmをインストールするけど、今回はインストールファイルの検索とダウンロードは手動でやるのでパス。

ダウンロードファイルは http://elrepo.org/linux/ にあります。今回はx86_64を使っているので、その中のkernel/el5/x86_64/RPMSからほしいカーネルをwgetで入手。

とりあえず、そこそこ安定してて新しそうな(?) kernel-ml-2.6.35-11.el5.elrepo.x86_64.rpm にしました。

あとはインストールするだけ。もちろん管理者でおこないます。

yum localinstall kernel-ml-2.6.35-11.el5.elrepo.x86_64.rpm

あとは再起動すれば、インストールしたカーネルになります。(ちゃんとgrubの画面から手動で選んでください)

カーネルパニックを起こさなければ、grubを書き換えて、起動優先順位が1番にします。

/boot/grub/menu.lst を書き換えます。

default=0                 # <- 0に書き換え

timeout=5

splashimage=(hd0,0)/grub/splash.xpm.gz

hiddenmenu

title CentOS (2.6.35-11.el5.elrepo)

        root (hd0,0)

        kernel /vmlinuz-2.6.35-11.el5.elrepo ro root=/dev/VolGroup00/RootVol rhgb quiet

        initrd /initrd-2.6.35-11.el5.elrepo.img

title CentOS (2.6.18-238.5.1.el5)

        root (hd0,0)

        kernel /vmlinuz-2.6.18-238.5.1.el5 ro root=/dev/VolGroup00/RootVol rhgb quiet

        initrd /initrd-2.6.18-238.5.1.el5.img

一回カーネルのアップデートをした上に、Raidを組んでるので、ちょっと特殊です。。。

カーネルパニックは起こさない物の、起動時にエラー(dm-region-hash.koエラー)を吐きます・・・・・・。特に不具合はないらしいですけど、気持ち悪いので修復します。

修復方法は、参考サイトの garakuta.net:kernel 2.6.37... のそのままなので載せませんが、「1つ目 dm-region-hash.koのエラー」をやると、ちゃんとエラーは消えました。

同サイトには、それ以外にもエラーが出る見たいですけどカーネルのVer.違いか、今回はそれ以外のエラーはありませんでした。

あとは、OpenIndianaが無事に使えるようになればいいけどなぁ・・・・・・

結果は後ほど。

2011/03/19 追記

OpenIndianaのio_180でインストールした結果、特に特殊な設定はしなくてもインストールが出来ました(^^)/

しかし・・・シャットダウンにしても、Init 0にしても、「Press any key ~ Reboot....」って言われます(笑)

当然何か押すと再起動するので、「Force off」で強制的に最後は切る羽目に・・・・。このときにCPU使用率が100%に張り付いたままになるので、どこかに問題があるはずだけど、詳しくは調べません。

まだio_180は、Developper向けのだからバグがあっても不思議ではないし。安定版が出たら再度検証してみます。