grub 2 无法检测到/dev/md1
我的计算机上哪个是 raid 1 驱动器。
当我按下cgrub 菜单并运行时ls
,我得到了所有驱动器的列表,但没有看到md1
用于启动 Ubuntu 的驱动器md1_p1
。
这是我在 grub2 文件中使用的配置40_custom
。
menuentry "Ubuntu 12.10 uuid" {
insmod ext2
insmod mdraid
set root='(md1,1)'
search --no-floppy --fs-uuid --set=root 23451bea-fd08-cff7-9289-9f9aa51f8599
linux /boot/vmlinuz-3.5.0-17-generic root=UUID=23451bea-fd08-cff7-9289-9f9aa51f8599 ro
initrd /boot/initrd.img-3.5.0-17-generic
}
我可以加载安装在其他分区上的 Linux,但无法启动刚刚安装在 raid 1 ext4 fs 上的 12.10。
答案1
我能够使用boot-repair
Live CD 修复该问题。我遵循了以下步骤
- 使用 Live CD 启动 Ubuntu
- 安装 mdadm
sudo apt-get install mdadm
- 组装阵列 sudo mdadm --assemble --scan
- 安装启动修复
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update sudo apt-get install -y boot-repair && boot-repair
- 使用启动修复中的高级选项,我能够选择 /dev/md1 作为我的操作系统(这是我之前安装 ubuntu 的 RAID)
- 重新启动并选择 Ubuntu on RAID 1
这样,启动修复就清除了以前安装的 grub,并安装了一个新的,我认为这就是问题解决的方式,因为这个新版本能够检测到 RAID 1 驱动器。
答案2
您可能需要将 linux 参数 --domdadm 传递给内核,如下所述这里因为在早期阶段不会安装 raid 设备。