我无法启动操作系统。每当我尝试启动操作系统时,它都会显示以下错误:
file /boot/grub/i386-pc/normal.mod not found
Entering rescue mode...
grub rescue>
我的电脑上有 ubuntu 和 windows 8.1。我该如何解决这个问题?
我尝试将 Ubuntu 14.04 安装到预装了 Windows 8.1 的计算机上。我的目标是使其成为双启动。
我主要遵循此链接上的说明:http://www.everydaylinuxuser.com/2014/05/install-ubuntu-1404-alongside-windows.html。
我不小心跳过了步骤 5,即关闭安全启动,这很可能是导致我当前错误的原因。 Ubuntu 安装在我的计算机上,但我无法在实时会话之后运行它,这促使我尝试 Ubuntu 和/或再次安装它。但现在我什至无法到达那里。
沮丧地,我取下了闪存驱动器,就在那时我到达了这个屏幕,但我似乎无法摆脱它。 (无法启动至 Ubuntu 或 Windows)
如果有帮助,请在 grub 救援模式提示符下输入命令“ls”,输出:“ (hd0) (hd0,gpt 12) (hd0,gpt 11) (hd0,gpt 10) (hd0,gpt 9) (hd0,gpt 8) .... (hd0,gpt 2) (hd0,gpt 1)
”
‘设置’输出:“ cmdpath=(hd0) prefix=(hd0,gpt10)/boot/grub root=hd0,gpt10
”
据我所知,这几乎是唯一有效的两个命令。我尝试过“退出”、“退出”、“lsmod”(我看到这在另一篇文章中可能有用),但都没有成功。
答案1
如果 grub 启动,那么你的 U 盘也应该启动。
您的 BIOS 中是否有启动菜单(尝试在开机时按F12、F1、ESC或其他键);DEL如果有,请插入 USB 并尝试在菜单中找到它。
如果找不到它,请尝试将 BIOS 设置为传统模式。
如果这不起作用,请尝试 grub rescue 中的这些命令之一。对于 Ubuntu 14.04.1:
linux (hd0,X)/boot/vmlinuz-3.13.0-32-generic root=/dev/sdaX
initrd (hd0,X)/boot/initrd.img-3.13.0-32-generic
对于 Ubuntu 14.04:
linux (hd0,X)/boot/vmlinuz-3.13.0-24-generic root=/dev/sdaX
initrd (hd0,X)/boot/initrd.img-3.13.0-24-generic
替换X
whit分区号(只需尝试列出的所有分区号,ls
直到它起作用)然后运行命令
boot
答案2
所以我刚刚成功地使我的笔记本电脑成为双启动。
我摆脱 grub 救援提示的方法实际上是将引导模式从传统模式更改为 UEFI。当我按 f2(对我来说)打开计算机时,我通过启动进入 BIOS 菜单来完成此操作。然后我滚动到“启动”并将其切换到“启动模式”选项下。
这在我的机器通电时摆脱了 grub 救援屏幕。当我打开它时,它带我进入Windows。但是,我没有选择 Ubuntu 或 Windows。相反,我直接进入了 Windows。我的下一步是禁用安全启动,因为安全启动是对计算机的一种保护形式,不允许您选择操作系统(请参阅 http://technet.microsoft.com/en-us/library/dn481258.aspx有关这方面的更多信息)。
注意:只有在切换到 UEFI 后,才会出现禁用安全启动。我现在可以关闭安全启动。执行此操作的方法也在 BIOS 菜单中。我只是向左滚动到“安全”选项卡(注意:您应该在底部看到“安全启动”选项。您无需禁用此选项,因为我的下一条指令将禁用它)。我一直向下滚动到“重置为设置模式”,然后按 Enter 键。这将清除 PK,禁用安全启动(您可以在该屏幕上查看)并进入设置模式。附带说明:我多次尝试简单地禁用安全启动,每次都保存它,但是当我重新启动计算机时,这并没有改变任何内容(仍然自动启动到 Windows)。
此后,当我重新启动时,我可以选择 Ubuntu 或 Windows(因为 Ubuntu 已经安装)。
我在 Lenovo P400 上执行此操作,因此这些步骤可能并不适用于所有计算机。在适用的情况下使用您的直觉。我的理解是,整个 UEFI 是新操作系统所独有的,包括但不限于 Windows(8 和 8.1)。
希望这对你有用!