web-dev-qa-db-ja.com

Rackspace Cloudでカーネルをアップグレードするにはどうすればよいですか?

私はサーバーを Rackspace Cloud -第一世代、not次世代Open Stackで実行しています。ハイパーバイザー用にXenを実行していると思います。

Rackspaceのストックイメージを使用します。私は主に10.04サーバーを使用していますが、12.04では新しいサーバーも展開しています。

私の問題は、カーネルを最新に保ちたいということです。新しいカーネルに対してapt-get dist-upgradeを実行でき、インストールは正常に機能します。ただし、再起動してもサーバーが起動しません。

私の推測では、grub構成にはカスタムハッカリーがあり、ストックカーネルは動作しますが、アップグレードされたカーネルは失敗します。

Rackspace Cloudで同様の問題を抱えている人はいますか? grubを新しいカーネルでブートするために必要な最小の変更は何ですか?

5
Evan P.

ルートデバイスからUUIDを除外するには、/etc/default/grubを編集して変更する必要があります。すなわち。

を押してターミナルを開きます Ctrl+Alt+T そして入力:

gksu gedit /etc/default/grub

次の行を見つけてコメント解除します。次のように、行の先頭から#を削除します# GRUB_DISABLE_LINUX_UUID=true

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
GRUB_DISABLE_LINUX_UUID=true

保存してgeditを終了します。

次に、update-grubを実行して、これらの変更に影響を与える必要があります。

Sudo update-grub

/ dev/xvda1のようなラックスペースで使用されているルートデバイスはUUIDではありませんが、これはgrubによって1つとして扱われます。その結果、次回の起動時にgrubはそのUUIDを持つデバイスを検索し、それを見つけることができず、起動プロセスがハングします。

3
Sam