Grub4Dos 和 /boot/bcd 错误

Grub4Dos 和 /boot/bcd 错误

我在笔记本电脑(SSD 驱动器)上运行 Ubuntu 13.04,最近又买了一个 HDD(第二个驱动器)来代替 CD-ROM。我想要实现的是将 Ubuntu 作为主操作系统,并能够偶尔启动 Windows 7。

我想要的设置是这样的:

  • hd0,0-(Ubuntu 安装到 /)
  • hd1,0——WINDOWS 分区
  • hd1,1——数据分区

由于现在我没有 CDROM,所以我必须从某个分区安装 Windows。我找到了一个教程,展示了如何使用Grub4Dos它来做到这一点。所以我做了以下事情:

  1. 复制grub.exe/
  2. 在 Ubuntu 中的 grub2 配置中添加了自定义条目,以便能够在启动时进入 Grub4Dos。
  3. 将我的 Win7 ISO 挂载到/mnt。然后使用以下命令将所有内容复制到DATA分区 (FAT32):cp -R /mnt/* /media/my_name/DATA
  4. 重启机器并进入Grub4Dos
  5. 然后我再次检查了我的解压 ISO 是否可用(hd1,1)- 是的。
  6. 应用如下:

root (hd1,1)

chainloader (hd1,1)/bootmgr

boot

之后,某些 Windows exec 启动(看起来像 Windows 安装程序)并立即报告问题:

Windows 启动管理器  

Windows 无法启动。最近的硬件或软件更改可能是原因。 修复此问题:   1. 插入 Windows 安装光盘并重新启动计算机。   2. 选择您的语言设置,然后单击“下一步”。   3.单击“修复您的计算机”。 如果您没有此光盘,请联系您的系统管理员或计算机 制造商寻求帮助。   文件:\Boot\BCD   状态:0xc000000f   信息:尝试读取启动配置数据时发生错误。

我在网上寻找解决方案,但所有资源都指向我通过 CD 修复 Windows,而我显然没有 CD(没有安装 CD-ROM 驱动器)。

我仔细检查了该hd1,1文件/boot/bcd夹,确实如此。所以看起来没有损坏。

谁知道发生了什么事?

答案1

要使磁盘可启动(无论是否使用 grub4dos),您必须写入 Windows 7 MBR 和 PBR 并使分区处于活动状态。

使用 grub4dos 时,你可以直接加载 bootmgr,跳过引导记录,但\boot\BCD 必须位于活动分区上

有多种工具可以写入 NT6(Vista、Windows 7/8)引导记录。任何磁盘管理工具都可以激活分区(parted - 引导标志)。

以上陈述适用于 BIOS 固件启动。

对于 UEFI 启动,您需要 ESP(EFI 系统分区),其中放置 Windows 启动文件,并在 NVRAM 中放置相应的启动项。

相关内容