私は Ubuntu 12.04 LTS を使用していますが、すべて正常でしたが、数日前に次のエラーが発生しました。
Gave up waiting for root device. Common problems: - Boot args (cat /proc/cmdline) - Check rootdelay= (did the system wait long enough?) - Check root= (did the system wait for the right device?) - Missing modules (cat /proc/modules; ls /dev) ALERT! /dev/disk/by-uuid/0c65a8c2-a7654613-aa98-16ff0119ceb9 does not exist. Dropping to a shell!
そして ( initramfs
) プロンプトが表示されます。ここで試してみました@ sudo update -initramfs -u
が、機能しません。
この問題をどうやって克服すればいいのでしょうか?
答え1
プロンプトに入力するexit
と、システムが起動します。その後、/boot/grub/menu.lst を編集して、ルート デバイスを長く待機する必要があります。
答え2
/scripts/local
initrdでマウントしようとしたときにルートデバイスが準備できていません。私のテストサーバーの1つでも同じ問題が発生しました。一般的な解決策rootdelay=XXX
カーネルに渡すことです。しかし、それでは問題は解決しません。
これを回避するには、sleep NNN
前maybe_break mount
に以下を追加して/usr/share/initramfs-tools/init
initrd を更新します。
sudo sed -i 's/maybe_break mount/sleep 5\nmaybe_break mount/g' /usr/share/initramfs-tools/init
sudo update-initramfs -u