Windows 破坏 GRUB 后如何修复它以及如何编辑 GRUB 菜单

Windows 破坏 GRUB 后如何修复它以及如何编辑 GRUB 菜单

我安装了 Windows XP 和 Ubuntu。我可以轻松启动其中任何一个,直到 Windows“修复”了引导加载程序,现在它只能启动 Windows。

我猜没有办法阻止 Windows 这样做。那么当这种情况发生时,我该如何快速恢复 GRUB 引导加载程序?

另外,当我在这里时:我如何编辑 GRUB 菜单,以隐藏我不想要的选项并更改默认启动操作系统?

答案1

从 Live CD 启动 (分区很快),然后在终端窗口中输入(替换您的(驱动器,分区)对):

sudo grub
find /boot/grub/stage1
root (hd0,0)
setup (hd0)
quit

然后重启系统

作为根编辑/boot/grub/menu.lst,它是相当不言自明的。

答案2

按照 Ubuntu 社区的说明进行操作恢复或修复引导加载程序问题。本质上,您必须使用 Live CD chroot 到硬盘环境,然后使用 grub-install 重新安装 GRUB。根据文档的建议,有多种方法可以执行此操作 - 请选择一种。

从 这个先前的答案

您可以在 Ubuntu 系统上的 /boot/grub/menu.lst 找到 GRUB 的菜单。

如果您刚刚安装了 Windows,它覆盖 MBR 是正常的。如果您刚刚对 Windows 分区进行了自动修复或恢复,您可能会遇到同样的情况。如果这不是全新安装,而且您没有修复系统,那么一定是发生了其他事情——Windows 通常不会无缘无故地“修复”MBR。

答案3

有时在 Windows 分区和格式化中,分区号会发生变化。例如:/dev/sda3 变为 /dev/sda4
因此,如果您在启动时遇到错误 17...“无法挂载选定的分区”...请按如下方式修复:

  1. 在 grub splash 上选择您的条目行并按“e”进行编辑
  2. 更改分区号...例如:(hd0,2)->(hd0,3)并按“enter”
  3. 重启
  4. 当您重新启动系统时,可以使用新设置修复 menu.lst...

答案4

GRUB 菜单保存在名为 menu.lst 的文件中。在很多系统中,它被称为 grub.conf,但它应该是 menu.lst 的符号链接,您可以编辑其中任何一个,因为符号链接会将您带到实际文件。

要恢复 GRUB 启动,您可以从实时 CD 或恢复盘启动,然后从那里开始工作。但我不会解释这一点,因为我没有确切的细节(而且猜测太危险了)。

相关内容