在目标系统中重新安装 Grub

在目标系统中重新安装 Grub

我正在尝试恢复 Grub 以启动 Linux Mint 13 和 Windows 7。我刚刚安装了 Windows 7,它重写了 MBR,然后我被告知我可以简单地启动 Ubuntu live cd,安装启动修复,然后通过以下方式重新安装 grub:主引导记录器。我完成了安装,使用清除旧 grub 的选项,但失败了,要求我运行一些终端命令来卸载 grub。运行这些命令后,我单击“前进”按钮,但它说 grub 仍然安装。我最终在我的 MBR 上安装了 grub,并且我可以使用 chainloader 手动启动 Windows,但无法启动 linux(它启动到 initramfs,我不知道从那里该做什么)。我发现 /boot/grub/stage1 丢失了,但是如何将 grub 重新安装到我的 linux 分区中?我尝试了 supergrubdisk (根据记录,这对用户来说完全不友好)。此时引导修复失败,并且我无法取消选中清除旧 Grub 的选项(它呈灰色)。我发现了这个信息:

如果您要修复的系统中缺少某些 GRUB 可执行文件(例如 grub-install),则无法取消 Boot-Repair 的“清除 GRUB”选项。 “清除 GRUB”选项将从 Internet 下载 GRUB 软件包并重新安装它们。

但它不会自动从互联网下载 grub 软件包(我有连接),并要求配置我的存储库以下载 grub2。有任何想法吗?我需要重新格式化我的 Linux 分区吗?

答案1

如果您进入 initramfs,则 grub 已完成。应该有一些消息解释为什么 initramfs 没有将控制权传递给系统 init (我猜它无法找到根文件系统)。这可能只是从 grub 传递的 root= 选项丢失或不正确(您可以在 grub 中使用 e 编辑该条目并更正它)。然后它应该启动。

或者,使用救援光盘来启动 Linux 安装。

选项三,从 Ubuntu livecdchroot进入您的安装。确保在 chroot 内挂载 /proc 和 /sys。

一旦安装完毕,dpkg-recofigure grub-pc可能就足以修复它。除了“GUB install devices”提示之外,您可以在所有提示中按 Enter 键。在其中,请确保检查带有 MBR 的磁盘(例如 /dev/sda)。

相关内容