Redhatクローンのディストリビューションとしても有名なCentOSですが、安定したOSを提供する性格上、カーネルのバージョンは古く2.6.18が使われている。
導入したいアプリケーションによってはカーネルのバージョンアップが必要になると思うので、取り急ぎ現在の2011年4月20日時点での最新安定板2.6.38.3へのバージョンアップを行う。
もちろん「やってみた」というだけなので、動作の保証はできません。
普通にインストールを行う。
基本的には特に何も意識しなくて良いが、導入パッケージの選択を行うフェーズで今すぐカスタマイズするを選択し、カテゴリ選択画面で開発 - 開発ツールと開発ライブラリの二つをチェックし追加しておく。
インストール完了後の初回起動時に、各種設定画面が表示されるが、こちらも特に意識して設定を行う項目はないが、今回はファイアウォールとSELinuxについては無効とする。
前準備の内容は以下の通り
特に気にせず作業。
$ su - Password: ←rootのパスワード # yum -y update
実行後、再起動しておく。
# reboot
http://kernel.org/から最新のカーネルソースをダウンロードしておく。
アーカイブは/usr/srcの下に。
# cd /usr/src # wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.38.3.tar.bz2
ダウンロードしたカーネルのソースに、ビルド前の準備を行う。
# tar -jxvf linux-2.6.38.3.tar.bz2 # cd linux-2.6.38.3
# make mrproper
# cp /boot/config-2.6.18-238.9.1.el5 ./.config
yum -y updateの実施前だとconfig-2.6.18-238.el5のみだが、実施後は上の物があるはずなので、最新なのでそちらを利用する
# make oldconfig
いろいろ質問が出るが、とりあえずすべてEnter応答とする。
# make menuconfig
下記項目(2項目)にチェックを入れるようにする
General setup <Select> [*] enable deprecated sysfs features to support old userspace tool [*] enabled deprecated sysfs features by default
この2項目をONにしないと、ビルド後のカーネルでの起動時にKernel Panicになる
さらに、Hyper-V上に構築したCentOSの場合はHyper-V用のドライバがあるので、こちらも導入しておくと吉。
Device Drivers <Enter> --> [*] Staging drivers <Enter> --> <M> Microsoft Hyper-V client drivers <M> Microsoft Hyper-V virtual storage driver <M> Microsoft Hyper-V virtual block driver <M> Microsoft Hyper-V virtual network driver <M> Microsoft Hyper-V Utilities driver
これらはカーネルのバージョンによっては無くなっている(場所が変わったりとか?)場合がある。特に3.x系以降は。気にすんな(ぉぃ
カーネルをビルドする。かなりの時間がかかるので、覚悟して行うこと。
# make clean # make bzImage # make modules # make modules_install # make install
上記作業で/etc/grub.confが書き換わるが、デフォルトで使用されるカーネルなどが切り替わっていないので、必要に応じて変更する。
# vi /etc/grub.conf ~~~ default=1 ←変更する ~~~
# reboot # uname -a Linux localhost.localdomain 2.6.38.3 #1 SMP Thu Apr 21 00:24:12 JST 2011 i686 i686 i386 GNU/Linux
Hyper-Vの仮想マシンのプロセッサ数が2以上になっている場合に、ネットワークに接続できない場合があります。
起動時のeth0のstartには成功し、staticでもDHCPでもちゃんと動くのに、ログインした後はpingもnslookupもtracerouteも全滅する感じ。
どうやらirqbalanceがうまく動かないようなので切る。
# chkconfig irqbalance off # reboot
何がトリガーかわからないが、gnome-panelがクラッシュしたり、真っ白になったりすることがちょこちょこ出る。
発生した場合は、ユーザーホーム配下の.gnome*を削除してやれば良い。
GUI環境を使用する場合は、デスクトップにGNOME端末のショートカットを配置しておき、クラッシュしてもCUIを使えるようにしておく。
でないと、シャットダウンすら困る事態に・・・
(Alt+F2で「アプリケーションの実行」ウィンドウを呼び出して、gnome-terminalってしてもOKか?)
# cd \\ / # rm -fr .gnome*