我有一台安装了 Win10 和 Ubuntu 的 PC,处于 EFI 模式。我必须更换主板,换一个不支持 UEFI 的主板。现在我无法加载任何操作系统 - 只显示黑屏和闪烁的光标。我们加载的启动修复程序说我必须以 EFI 模式加载,但新主板不支持它。我可以转换驱动器而不重新安装操作系统吗?
答案1
详细说明 oldfred 的评论:
- 从 2011 年中后期开始,计算机制造商迅速从基于 BIOS 的固件转向基于 UEFI 的固件。几乎所有搭载 Windows 8 的计算机都使用 UEFI,因为微软要求制造商必须拥有一项 UEFI 独有的功能,即安全启动,才能声称其硬件已通过 Windows 认证。尽管有一些坚持者(主要是服务器和一些裸主板),但如今您购买的几乎所有新 x86 或 x86-64 计算机或主板都具有 EFI 固件。可以想象,您的主板配置为以 BIOS/CSM/传统模式启动,但基于 EFI,因此更改固件设置可能是您需要做的。
- EFI 使用存储在EFI 系统分区 (ESP) 和指向存储在 NVRAM 中的引导加载程序的指针。因此,将硬盘从一台基于 EFI 的计算机转移到另一台计算机可能会导致该磁盘无法在新计算机中启动。有几种方法可以解决这个问题,例如:
- 您可以将启动管理器(可能是 GRUB
EFI/ubuntu/grubx64.efi
)复制到后备文件名在EFI/BOOT/bootx64.efi
ESP 上。 - 您可以重新创建 NVRAM 条目。这是一个比前一个更好的解决方案,但这样做需要您知道如何使用
efibootmgr
(在 Linux 中),bcdedit
或简易UEFI(在 Windows 中)、bcfg
(在 EFI shell 中)或其他类似工具。请参阅这个问题举一个使用的例子efibootmgr
。(这个问题有一个细节错误,导致提问者出现问题,正如我在回答中指出的那样,但除此之外是一个很好的模板。)你可以efibootmgr
在 Ubuntu 安装盘的“安装前尝试”模式下使用。 - 您可以使用引导修复。此工具对于这种情况来说有点过头了,但它可能比使用
efibootmgr
或类似工具更容易。请注意,如果您在 BIOS 模式下启动恢复系统,它将尝试安装 GRUB 的 BIOS 模式,这最多只能提供部分帮助,因此在尝试这种方法之前,您应该确保知道如何在 EFI 模式下启动。 - 最后一个选择是使用我的rEFInd 启动管理器。将此工具放在 USB 闪存驱动器或 CD-R 上,它应该可以启动它找到的任何 EFI 引导加载程序。您可以通过这种方式无限期地使用它,但最好将可移动磁盘上的 rEFInd 用作临时应急工具;启动到您选择的操作系统并使用您喜欢的工具修复或重新安装您的引导加载程序。
- 您可以将启动管理器(可能是 GRUB
- 如果您的新主板是基于旧 BIOS 的主板,那么它已经足够旧了,您可能需要考虑将其换成新主板。但如果这是不可能的,那么有几种选择:
- 您可以清除磁盘并重新安装所有内容。这是最容易解释的方法,也可能是最容易做到的,但它也会很痛苦,特别是如果您没有备份并且没有办法制作备份。但请注意,其他选项可能会有风险,因此建议您在继续任何选项之前先获得制作备份的方法——一旦您有了备份,清除磁盘并重新安装就变得不那么痛苦了。
- 您可以将磁盘从 GPT 转换为 MBR 格式,并安装新的 Windows 和 Ubuntu (GRUB) 引导加载程序。我的
gdisk
工具(Ubuntu 的标准配置)可以执行 GPT 到 MBR 的转换,如所述这里。您可以使用引导修复安装 BIOS 模式 GRUB。不过,启动 Windows 会比较棘手。我建议您在 Windows 论坛上询问这方面的问题。 - 我最近遇到了此程序声称可以从 GPT 磁盘以 BIOS 模式启动 Windows。我还没有尝试过这个程序!我仅提供指向它的指针,以防您愿意研究它并自己尝试。如果您让它工作,那么您也可以使用 Boot Repair 让 Ubuntu 工作——但您可能需要创建一个小的(~1MiB)BIOS 启动分区。
- 如果你真的很有冒险精神,你可以尝试使用二重唱或者三叶草在基于 BIOS 的计算机上。这些本质上是作为 BIOS 引导加载程序实现的 EFI;它们使基于 BIOS 的计算机能够使用 EFI 引导加载程序和操作系统。请注意,Clover 得到了更好的支持,并且可能是更好的选择;但它本质上是一个 Hackintosh 引导加载程序,因此它的一些工具、文件格式等旨在与 macOS 一起使用,这可能会使它难以上手。如果我没记错的话,
.iso
您可以使用一个图像来开始使用。还要注意,这些工具并不适用于所有计算机。根据我的经验,它们更有可能在基于 Intel 的计算机上工作,而不是在基于 AMD 的机器上。 - 使用任何一种方法,您都可能会遇到 Windows 许可证问题,正如 oldfred 指出的那样 - 但也许有一种合法的方法可以解决这个问题。(像 oldfred 一样,我强烈建议不要使用盗版 Windows!)在 Windows 论坛上询问。
因此,你做有选择;但如果您的计算机确实是基于 BIOS 的,那么这些选择要么昂贵(新主板),要么风险大且耗时。我试图在我的选项列表中做到完整;我对任何仅限 BIOS 的选项都不太感兴趣,除非可能要清除磁盘并重新安装所有内容。如果您的新主板实际上是基于 EFI 的,那么您会更好,但您仍然需要使用一些恢复工具才能使其正常工作。
答案2
由于您使用的是 uefi,我假设磁盘是使用 gpt 分区的。
1)传统启动无法读取 gpt 磁盘。
2) Windows 可能需要全新安装。我不知道是否可以转换。
3)可以通过在 MBR 模式下重新安装 grub 将 ubuntu 转换为传统启动。
如果您有备用驱动器,则可以复制分区。将内部驱动器重新格式化为 MBR,然后将分区复制回来并安装 grub。
有一个在 bios 模式下制作 gpt 磁盘启动的过程,它涉及将 mBR 写入磁盘并制作一个小的 grub-bios 分区。
这篇文章提供了有关启用 BIOS grub 启动和使用 gpt 磁盘的参考。