rootfs のロードに失敗しました: Ubuntu 10 + grub2 + rootfs ext4 w/ RAID1

rootfs のロードに失敗しました: Ubuntu 10 + grub2 + rootfs ext4 w/ RAID1

新しい Ubuntu 10 (サーバー) インストールの起動に問題があります。プライマリ HD (/dev/sda) のレイアウトは次のとおりです。

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          18      144553+  83  Linux                  <-- /BOOT
/dev/sda2              19      182401  1464991447+   5  Extended
/dev/sda5              19        2207    17583111   fd  Linux raid autodetect
/dev/sda6            2208       11934    78132096   fd  Linux raid autodetect  <-- / (ROOTFS)
/dev/sda7           11935      182401  1369276146   fd  Linux raid autodetect

rootfs は RAID1 (ソフトウェア) アレイの一部です (現在は劣化しています)。

# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid1 sda6[1]
      78132032 blocks [2/1] [_U]

パーティションの UUID は次のとおりです。

# blkid /dev/sda1
/dev/sda1: UUID="b25dd301-41b9-4f4d-9b0a-0e31713dd74c" TYPE="ext2"
# blkid /dev/sda6
/dev/sda6: UUID="af7b9ede-fa53-c0c1-74be-31ec752c5cd5" TYPE="linux_raid_member"
# blkid /dev/md2
/dev/md2: UUID="a0602d42-6855-482f-870c-6f6ecdcdae3f" TYPE="ext4"

最後に、grub2 メニューエントリを次のように設定します。

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-25-server' --class ubuntu --class gnu-linux --class gnu --class os {
        insmod ext2
        insmod raid
        insmod mdraid
        set root='(hd0,1)'
        search --no-floppy --fs-uuid --set b25dd301-41b9-4f4d-9b0a-0e31713dd74c
        linux   /vmlinuz-2.6.32-25-server root=UUID=a0602d42-6855-482f-870c-6f6ecdcdae3f ro   nosplash noplymouth
        initrd  /initrd.img-2.6.32-25-server
}

起動しようとすると、grub は正常にロードされますが、最終的に次のエラー メッセージが表示されます。

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/a0602d42-6855-482f-870c-6f6ecdcdae3f does not exist.   
Dropping to a shell! 

grub ブートローダーから grub> コマンド ラインを開くと、ls (hd0,) を実行でき、上記のように UUID を持つ正しいパーティションが一覧表示されます。sda6 は 'a0602d42-6855-482f-870c-6f6ecdcdae3f' (RAID UUID) を表示します。ls (md2)/ を実行すると、RAID1 ファイル システム (ext4) 上のすべてのファイルが適切に一覧表示されるため、RAID デバイスへのアクセスに問題はないように見えます。

何が問題なのか、何かアドバイスはありますか? 私にはわかりません。

答え1

結局、Google で答えを見つけました。

の行rootdelay=90にカーネル パラメータを追加する必要がありました。 その後、システムは問題なく起動します。それほど時間はかかりません (POST から Ubuntu ログイン プロンプトまで 30 秒程度)。この問題に対する回避策としてはあまり知られておらず、文書化もあまりされていないようです。linux /vmlinuz...grub.cfg

関連情報