12.10 64 位 Ubuntu 无法启动,grub 救援,未找到文件 /boot/grub/i386-pc/normal.mod

12.10 64 位 Ubuntu 无法启动,grub 救援,未找到文件 /boot/grub/i386-pc/normal.mod

几周前我买了一台新电脑,并从书上的 DVD 安装了 Ubuntu。一切顺利,我很高兴地使用 Ubuntu,直到我发现它是 32 位版本。我想使用 64 位版本,因为我刚刚花钱用 64 位系统替换了旧电脑。我从 Ubuntu 网站创建了一张包含 64 位 ISO 的 DVD 并安装了它。安装很顺利,并显示已成功完成,但当我重新启动系统时,我收到一条消息

error: file '/boot/grub/i386-pc/normal.mod' not found
grub rescue

我可以从安装 DVD 启动,并且看到 64 位 Ubuntu 在我的系统上运行良好,并且已经用它尝试了我在本网站和谷歌上看到的一些建议,但没有找到可行的建议。

从 grub 提示符和运行 Ubuntu dvd 中,我可以看到我确实有一个名为 /boot/grub/x86_64-efi 的目录,它看起来像是 i386-pc 目录的 64 位模拟,并且其中包含许多 .mod 文件。根据我的简单理解,grub 似乎感到困惑,它在不存在的 32 位目录中寻找其 mod 文件,而不是在确实存在的 64 位目录中寻找。然后,似乎如果我可以告诉 grub 在正确的位置查找,我可能就可以启动 Ubuntu。

有人能解决这个问题吗?

答案1

我解决了这个问题。

我做了两件事,但不知道哪一件事解决了这个问题。

我的系统上有 2 个磁盘。一个是固态硬盘,另一个是传统机械硬盘。我拔掉了固态硬盘。

然后我从 DVD 重新安装。当我到达对驱动器进行分区的部分时,我设置了我想要的分区,然后选择继续。安装程序发出警告,说我尚未设置 efi 启动分区,并且至少需要 35 MB 的分区。我返回并添加了一个 40 MB 的 efi 启动分区。(这是分区类型选择列表中的选项之一,与 /boot 不同)安装完成,我重新启动,系统加载并运行正常。

在我之前 3 次尝试在 SDD 上安装 Ubuntu 时,从未出现过 efi 启动分区警告。所以我不知道问题出在 SDD 上安装 64 位版本还是我没有创建 efi 启动分区。但我知道 32 位版本已从 SDD 安装并运行。

我熟悉这个论坛,但不知道如何关闭工单,而且我在这个页面上没有看到关闭工单的按钮。但如果有人想将此标记为已解决,我没意见。我认为已经完成了。

答案2

错误:未找到文件‘/grub/i386-pc/normal.mod’ 试试这个链接上的答案,你一定能解决问题。它对我来说总是有效的,无论是 Linux Mint 还是 Ubuntu

相关内容