![安装 Ubuntu - RAID 0 后,GRUB 找不到 Windows 7](https://linux22.com/image/823004/%E5%AE%89%E8%A3%85%20Ubuntu%20-%20RAID%200%20%E5%90%8E%EF%BC%8CGRUB%20%E6%89%BE%E4%B8%8D%E5%88%B0%20Windows%207.png)
我刚买了一台新电脑,上面有两个 256 GB 的 SSD,配置为 RAID 0。它预装了 Windows 7,但我希望至少安装一个 Linux 发行版。因此,我尝试通过 LiveCD 安装 Ubuntu。
在 LiveCD 中,我首先为 Ubuntu 创建了几个分区。第一个是 12GB 的交换分区,第二个是约 88GB 的 ext4 格式分区(gparted 不允许我创建扩展分区,因此这两个分区都是主分区)。额外的空间来自缩小 Windows 7 分区。
在安装 Ubuntu 时,我为引导加载程序选择了主 RAID 控制器。安装程序完成后,一切都启动正常,但 GRUB 没有 Windows 7 加载程序的条目(即使它有一个 Windows 7 恢复加载程序的条目)。
为了解决这个问题,我尝试手动编辑 /boot/grub/grub.cfg 文件,将以下行添加到 30_os-prober 部分:
menuentry "Windows 7 (loader) (on /dev/mapper/isw_bhcibcaafd_Volume0p5)" --class windows --class os {
insmod part_msdos
insmod ntfs
set root='(hd2,msdos3)'
search --no-floppy --fs-uuid --set=root 6A92977992974889
drivemap -s (hd0) ${root}
chainloader +1
}
重启后,GRUB 没有加载,屏幕左上角只有一个闪烁的光标。因此,我尝试删除该部分(通过 Ubuntu LiveCD),但这样做之后,我仍然无法启动任何东西。有人能帮我吗?谢谢!
以下是我的 BootInfo 摘要的副本:http://paste.ubuntu.com/1159385/
PS:如果有人需要它来寻找解决方案,我有一份 grub.cfg 的副本
答案1
不要手动编辑你的/boot/grub/grub.cfg
。自 grub2(大约 2009 年)以来,此文件会在多个事件(例如内核更新)中自动覆盖。
如果您希望 grub 扫描您的硬盘并查找操作系统,请尝试以下操作:
sudo update-grub
这将重新生成您的文件,grub.cfg
其中包含探测器找到的所有条目。如果您想自定义此操作,请尝试编辑此文件:/etc/defaults/grub
。这是供用户/管理员编辑的一个配置文件。
您还可以在 的文件中启用或禁用可执行位/etc/grub.d
。您还可以在那里编辑或创建新文件以包含手动条目。后者正是这样/etc/grub.d/40_custom
做的。
您还可以查看本维基,它包含您可能想知道的有关 grub2 的所有内容和更多信息