UEFI 硬件和 Windows 双重启动

UEFI 硬件和 Windows 双重启动

我已经努力了三天,尝试双启动 Ubuntu 11.10 和 Windows 7。我想使用 SSD 安装 Ubuntu,使用 HDD 安装 Windows。我意识到我必须先安装 Windows,然后再安装 Ubuntu,所以我这样做了。当我第一次安装 Windows 时,它可以从我的 HDD 正常启动,但是当我将 Ubuntu 添加到 SSD 并重新启动时,我得到一个带有闪烁光标的黑屏。我读过很多论坛,其中有人问这个问题,但没有找到一个可行的解决方案。

我试过启动修复。它告诉我要创建一个 Fat ESP 分区,我也照做了,但还是没用。

我是个新手,如能得到任何建议我将非常感激。

答案1

不幸的是,你会在互联网上得到很多关于这一点的完全无用的信息,因为基于 UEFI 的系统上的启动过程是完全地与旧版基于 BIOS 的硬件上的启动过程不同。在这里一篇文章中完全描述相关差异是不可能的,因此,如需完整信息,我建议您查看维基百科关于 UEFI 的页面我的有关 Linux 的 EFI 引导加载程序的网页。(请注意,“UEFI”是指下一代 EFI;本质上是 EFI 2.x。在大多数情况下,这两个术语可以互换,尽管“UEFI”更具体,指的是该技术的较新版本。)

不过,为了让你开始,你应该首先验证你以 EFI 模式启动 Windows。这可以通过多种方式完成,例如在管理命令提示符窗口中键入“bcdedit”。结果应在“Windows 引导加载程序”部分的“路径”行中包含对 winload.efi 的引用。如果此行引用的是 winload.exe,则系统以 BIOS 模式启动,您需要遵循更传统的 BIOS 建议。

假设您是在 EFI 模式下启动的,我的第一个建议是不要安装 Ubuntu 11.10 或更早版本。这些版本在安装过程中存在错误,这使得设置与任何其他操作系统的双启动变得更加困难。Ubuntu 12.04 修复了这些错误中最严重的问题。在以 EFI 模式启动的 12.04 中,安装程序应检测由 Windows 创建的 EFI 系统分区(ESP;保存引导加载程序的分区),并将其自己的引导加载程序添加到该分区。

一个可能的复杂情况是,即使 Windows 以 EFI 模式安装,Ubuntu 也可能无法以 EFI 模式启动。您可以通过查找目录 /sys/firmware/efi 来检查此详细信息。(您可能需要使用“安装前尝试”选项来检查此文件,然后启动安装程序。)如果此文件存在,则您肯定是以 EFI 模式启动的。如果没有,则您可能是以 BIOS 模式启动的,尽管这并非 100% 确定。如果您发现您正在以 BIOS 模式启动,则应该纠正该问题,或者继续以 BIOS 模式安装,然后切换启动模式。这两个选项中的任何一个都值得在这里提出一个全新的问题,所以我就不深入讨论了。

理想情况下,如果 Ubuntu 12.04 安装正确,它将检测 Windows 并将 GRUB 2 设为默认引导加载程序,这样系统就会按预期工作,并在您启动时为您提供引导菜单。但有时您需要将 Windows 添加到 GRUB 配置中,您可以通过在 /etc/grub.d/40_custom 中创建如下条目,然后重新运行“grub-mkconfig -o /boot/grub/grub.cfg”来完成此操作:

menuentry "Windows 7" {
        set root='(hd0,gpt1)'
        chainloader /EFI/microsoft/BOOT/bootmgfw.efi
}

其他时候,系统可能会继续直接启动到 Windows。通常可以通过从 ESP 中删除 EFI/boot/bootx64.efi 来纠正此问题,或者将其替换为 GRUB 2 引导加载程序文件的副本(可能是 EFI/ubuntu/grub_x64.efi,如果我没记错的话)。不幸的是,此问题是由特定 EFI 实现中的错误引起的,因此解决方法可能高度依赖于系统。

您的黑屏和闪烁光标的症状表明 GRUB 配置严重错误,或者可能完全没有安装 GRUB。我将回避这个问题,说如果幸运的话,Ubuntu 12.04 会修复这个问题。如果没有,我建议安装 ELILO 或 Fedora 的修补版 GRUB Legacy 来替换 GRUB 2,因为根据我的经验,GRUB 2 是至少可靠的 Linux EFI 引导加载程序。(有关详细信息,请参阅我在此回复第一段中引用的 EFI 引导加载程序页面。)

答案2

您是否尝试过像 Windows 一样在 sshd 上为 uefi 创建一个 200MB 的分区?

我不知道它应该采用什么格式但我确信有人知道。

尝试拔出 Windows HD,然后安装 Ubuntu(或选择的发行版),然后重新插入 Windows,首先设置启动顺序 t ubuntu,然后编辑 grub(grub2?)以添加 Windows。

如果您可以在启动时尝试 F12 技巧并选择所需的驱动器。重复两次,看看是否都有效。

某些 IOS 将允许您禁用 UEFI。

我一这样做,Windows 就想要 R/R。

我唯一可以运行的 Linux 是 DVD 或 Flash Live 版本。

如果您可以重新制作闪存驱动器,事情应该会变得更好。

或者也许使用 USB 3.0 外部驱动器并从其启动?

答案3

尝试在 Ubuntu 设置中将引导加载程序安装到 hdd,也许是 sdd 上的 grub 安装存在问题。

相关内容