私はサーバーを Rackspace Cloud -第一世代、not次世代Open Stackで実行しています。ハイパーバイザー用にXenを実行していると思います。
Rackspaceのストックイメージを使用します。私は主に10.04サーバーを使用していますが、12.04では新しいサーバーも展開しています。
私の問題は、カーネルを最新に保ちたいということです。新しいカーネルに対してapt-get dist-upgradeを実行でき、インストールは正常に機能します。ただし、再起動してもサーバーが起動しません。
私の推測では、grub構成にはカスタムハッカリーがあり、ストックカーネルは動作しますが、アップグレードされたカーネルは失敗します。
Rackspace Cloudで同様の問題を抱えている人はいますか? grubを新しいカーネルでブートするために必要な最小の変更は何ですか?
ルートデバイスから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を持つデバイスを検索し、それを見つけることができず、起動プロセスがハングします。