我在 W8 安装上安装了 ubuntu(我的目标是只保留 ubuntu),安装顺利完成并要求重新启动,之后,它只给我一个黑屏和
grub rescue>
出现在屏幕上。我尝试按照这里的指南进行操作:修复 GRUB 错误:“错误:未知文件系统”我能够找到 .mod 文件,但是出现了一系列问题。
*如果在 (hd0,gpt5) 中找到文件,设置后“gpt”是否值得关注???*
set prefix=(hd0,gpt5)/boot/grub
并尝试加载模块
insmod normal
计算机说:
error: file '/boot/grub/x86_64-efi/normal.mod' not found
我不知道为什么它会在目录中添加额外的“x86_64-efi”。鉴于该解决方案不起作用,我尝试使用完整目录加载模块:
insmod (hd0,gpt5)/boot/grub/normal.mod
但这次计算机说“无效的依赖于 arch 的 ELF 魔法”。我自己还没有能力独自完成更多,请帮忙。
更新
我能够从实时 USB 运行“试用 ubuntu”,我可以看到我的所有分区,包含 ubuntu 文件的分区,包含我所有数据的分区,我只想知道如何让 ubuntu 在重启时启动,没有别的,请帮忙。
答案1
更新:
最终,解决方案是使用其他帖子建议的启动修复。建议的更改对我来说效果很好,现在我又遇到了一些小问题,但我要提出另一个问题,因为在我看来这是一个不相关的问题。感谢大家的帮助。
答案2
在 Ubuntu 安装程序进行安装选择之前,启动安装程序时会出现 UEFI 菜单。它应该有两个选择,UEFI 和 BIOS,但描述并不总是清楚哪个是 BIOS 或 UEFI。如果您在 gpt 分区驱动器上安装,那么您必须有一个 efi 分区才能在 UEFI 模式下启动,或者有一个 bios_grub 分区才能在 BIOS 模式下启动。
有些可以手动启动,将 gpt8 的示例更改为安装时的分区。
未找到 /boot/grub/i386-pc/normal.mod 无法以 UEFI 模式启动 手动启动有效
set root=(hd0,gpt8)
set prefix=(hd0,gpt8)/boot/grub
insmod linux
linux /vmlinuz root=/dev/sda8 ro
initrd /initrd.img
boot
或者:
configfile (hd0,gpt8)/boot/grub/grub.cfg
发现将 grub.cfg 放入 /EFI/ubuntu 是可行的,即使 grubx64.efi 位于 /EFI/Boot 中
如果不起作用,请发布 BootInfo。发布创建 BootInfo 报告的链接。是 Boot-Repair 的一部分:
https://help.ubuntu.com/community/Boot-Info
启动修复 - 还处理 LVM、GPT、单独的 /boot 和 UEFI 双启动。:
https://help.ubuntu.com/community/Boot-Repair
您可以使用此报告或“创建 BootInfo”报告(其他选项)修复许多启动问题并发布其创建的链接,以便我们可以看到您的确切配置并诊断高级问题。