CentOS 5.4でXenを抜いたら起動しなくなった・・・ | Technolog.jp - ICTウェブマガジン

CentOS 5.4でXenを抜いたら起動しなくなった・・・

5.4だけではなく、Linux全般に言えることですが、OSインストールの際、仮想化ソフトウェアであるXenをインストールし、その後、アンインストールすると、一度シャットダウンしたが最後、起動できなくなります。これはXenを抜く際にカーネル「kernel-xen」も一緒に抜かれてしまうためです。

本件は個人利用のサーバであったため、それほど痛手ではなかったのですが、ファイルサーバやウェブサーバとしても使用していたので、必要なデータの引き抜きは必須でした。バックアップも取ってはいたのですが、週間隔で行っていたため、最新情報が消えてしまいます。それは困るということで復旧の手段を模索しました。

いろいろ調べた結果、最終的に行き着いたのが、レスキューモードからのカーネル再インストールです。それもYUMではなく、RPMパッケージを外部から持ってくる必要があります。

レスキューモードの起動

CentOSのブートDVDを用意し、起動。その後、画面下にbootというコマンドラインが表示されるので、そこに「linux rescue」と打ち込み、Enterで実行します。しばらくすると言語およびキーボードの選択を聞かれるので、「Japanese」を選んでください。続いてネットワーク設定を聞かれるので、こちらは必要に応じて設定を行って下さい。その後、レスキューモードが起動します。

カーネルのダウンロード

ご存知のようにレスキューモードは通常起動時のターミナルと同じ状態です。当然の如く、RPMやYUMコマンドが使用できるので、これを利用し対応を行います。まずはカーネルのRPMパッケージの入手です。こちらのサイトで配布されているので、適切なものを選び以下のコマンドを実行します。

1
wget ftp://ftp.pbone.net/mirror/ftp.centos.org/5.4/os/i386/CentOS/kernel*.rpm

カーネルのインストール

続いてダウンロードしたRPMパッケージをインストールし、その後、更新を行って下さい。

1
2
rpm -Uvh kernel*.rpm
yum -y update

あとは再起動すれば正常に起動するはずです。本対応は前述したように個人利用のサーバにおける簡易対応になりますので、それ以外の場合はご注意ください。また、できれば初期インストール段階でのXenのインストールは避けておいた方がよいでしょう。