我在两个独立的驱动器上有 2 个 EFI 分区。如何将它们合并?

我在两个独立的驱动器上有 2 个 EFI 分区。如何将它们合并?

我有一台戴尔 7567 笔记本电脑,配备 1 个 SSD 和 1 个 HDD。SSD 中安装了 Windows。

我将逐步解释事件的顺序

  • 我尝试安装 Ubuntu,但安装程序在准备安装时一直卡住,这是分区之前的步骤

  • 我决定移除我的 SSD,然后尝试安装

  • 它成功了,安装继续进行。我在硬盘上安装了 Ubuntu。还在硬盘上为 Ubuntu 创建了一个新的 EFI 分区。

  • 之后我再次放入我的固态硬盘,现在当我选择启动到 Windows 时收到一条错误消息。

  • 我收到 Process1 Intiation failed stopcode

  • 我认为我的分区由于两个 efi 而混乱,这是导致此错误的原因(如果您认为是其他原因,请告诉我)

    请告诉我如何修复此问题。Ubuntu 运行良好。但我也需要 Windows。有没有办法合并我的两个 EFI 分区。我可能会丢失数据。请帮忙。

答案1

简短回答:

总的来说,这是一个 Windows 问题,所以我建议在 Windows 论坛上提问。快速谷歌一下你的错误信息,结果如下这个。我建议不要尝试组合您的 ESP,因为这几乎肯定不是问题的根源,而且这样做可能会产生新的问题。如果问题与 Ubuntu 有关,则启动信息列表(见下文)可能会有所帮助,但如果没有 Ubuntu 解决方案,则最有可能是 Windows 特有的问题。

长答案:

拥有两个 ESP 是完全合法的,尽管有一些注意事项。最重要的是,如果同一个磁盘上有两个 ESP,Windows 7 安装程序将阻塞。我不知道它是否会与两个磁盘混淆,每个磁盘都有自己的 ESP;我不知道这是否是较新版本的 Windows 的问题。我从未听说过已安装的 Windows 因第二个磁盘有新的 ESP 而阻塞。(我自己以这种方式安装了 Windows,没有问题。)所有这些都表明,尝试合并两个 ESP 可能是徒劳的,并且本身可能会导致新的问题......

特别是,如果你决定合并两个 ESP,那么将文件从一个 ESP 复制到另一个 ESP不够;你需要为复制的引导加载程序创建一个新的 NVRAM 条目efibootmgr(在 Ubuntu 中),bcdedit或者简易UEFI在 Windows 中,或者在其他操作系统中使用类似的工具。

我对你的问题还有其他一些想法:

  • 您如何选择启动 Windows?-- 您说您可以选择启动 Windows,但不清楚您是如何做到这一点的。它可能是 EFI 的内置启动管理器(您可能用来启动 Ubuntu 安装程序的相同工具)或 GRUB。如果您使用的是 EFI 启动管理器,那么系统可能会以与以前相同的方式启动(但请参阅下一点);但如果您使用的是 GRUB,它可能会尝试以非常不同的方式启动 Windows。这可能是问题的根源。如果是这样,Boot Repair 的 BootInfo 输出可能有助于诊断问题。您可以运行启动修复实用程序并选择“创建 BootInfo 摘要”选项。(不要点击“建议修复”,至少现在还不行!)当询问是否上传报告时,单击“是”,然后发布此处提供的 URL。
  • Windows 的 EFI 启动项可能丢失-- EFI 依靠 NVRAM 中的条目来启动引导加载程序。一些(但不是全部)EFI 会自动删除无效条目,因此当您拔下 Windows 磁盘并启动计算机以安装 Ubuntu 时,原始 Windows 条目可能已被删除。某些 EFI 还会在 Windows 存在时自动为其添加条目,因此当您重新插入磁盘时,可能会创建一个新条目 - 但这个新条目可能与原始条目不完全匹配。同样,Windows 通常使用后备文件名EFI/BOOT/bootx64.efi),如果没有其他可用项,EFI 将启动该项,因此您可能通过此条目启动。这可能是导致您出现问题的一个因素。不幸的是,如果我没记错的话,原始条目已丢失,即使有 Boot Info 输出,也可能不清楚它应该是什么;但无论如何,该输出中可能存在线索。在这种情况下,Windows 工具应该能够创建一个工作条目,但这是 Windows 论坛上讨论的主题。
  • 文件系统可能损坏-- Windows 8 及更高版本使用快速启动和休眠功能,这可能会导致双启动设置中的文件系统损坏。因此,必须禁用这些功能,如所述这里这里。如果您在安装 Ubuntu 之前没有执行此操作,则可能是您的 Windows ESP 在某个地方损坏了,这可能会导致您的问题。如果是这样,文件系统修复(在dosfsckUbuntu 或CHKDSKWindows 中)可能会解决问题。在最坏的情况下,您可能需要使用 Windows 工具重新安装 Windows 引导加载程序。(如果您有备份,从备份中恢复它们也可以。)

请注意,所有这些问题基本上都是对 Windows 启动失败的触发原因的解释。除了通过 GRUB 启动之外,解决方案很可能来自运行 Windows 修复工具。如果问题是由尝试通过格式错误的 GRUB 启动项启动 Windows 引起的,那么在 Ubuntu 中修复该问题应该可以解决问题;但其他原因将需要 Windows 修复。因此,在尝试任何其他操作之前发布 Boot Info 输出可能会有所帮助;但您应该准备在 Windows 中寻找解决方案。

答案2

多个 ESP 不会造成混乱。有 2 个 ESP(每个磁盘 1 个)不是问题。我的 SSD 上有 W10,HDD 上有 Linux Mint。我的 UEFI 配置为使用 Grub 在 HDD 的 ESP 上启动,在 Grub 菜单中,我有一个菜单项“Windows 启动管理器”,它是 SSD ESP 的链式加载。它运行完美(我唯一担心的是我想将 Linux 放在 SSD 上,将 W10 放在 HDD 上 - 这是一场噩梦)

我非常确定,您的问题是由于您移除了 SSD 造成的。它可能在某处更改了磁盘索引。

首先,当您安装 Ubuntu 时,系统就像一个全新的系统。没有其他操作系统。因此,Ubuntu Grub 显然无法为您的 Windows 提供菜单项。所以问题(和线索)是,在放回 SSD 后,您如何在启动时选择 Windows ????? F12 可能?

正如 Rod 所说,(您可能对他写的内容很有信心。Rod 是 UEFI 专家。我花了几天时间阅读他的网站以找到答案 - 作为补偿,我应该为他的网站提供 CSS ;-) 我认为您必须运行 Windows 的恢复工具才能重新创建启动过程。接下来可能发生的情况是 UEFI 将在 SSD 的 ESP 上启动。但这不是问题。您可以轻松更改它。

答案3

这可能是你的固件问题。有些固件不支持每台机器有多个 ESP12。其他固件甚至支持每个磁盘多个 ESP。SPEC 无论如何都不需要支持多个 ESP。所以你不能真的责怪固件。你必须仔细选择你的机器,尽管我很确定 2020 年以后的现代系统支持几乎所有必需和可选功能。不过,我最近拿到了一些旧笔记本电脑和奇怪的新制造的超便宜产品,每台机器只支持 1 个 ESP。

如果您发现在不同的磁盘上不能有超过 1 个 ESP。那么您仍然有一些选择:

  • 尝试升级 BIOS。此后,其中一台笔记本电脑实际上可以接受多个 ESP。

  • 检查您的 BIOS 是否提供通过选择 EFI 分区中的指定文件来创建启动项的选项。如果可以做到这一点,您就可以在同一个 EFI 分区上安装 Windows 和 grub 引导加载程序。它们都将在 EFI/BOOT/ 中竞争。EFI/BOOT 包含一个默认引导加载程序:例如,如果您最后安装 Windows,它将是 Windows 引导加载程序。但只要它们具有不同的引导加载程序 ID,两者仍然在 中具有自己独立的子目录EFI/<id>/。因此,您可以创建直接指向这些 efi 文件的启动项。然后在启动菜单中,您可以选择要启动哪一个。与传统模式不同,您不需要特殊工具将信息写入分区的特殊范围。bcd 数据库或 grub.cfg 中的大多数条目取决于根分区的 uuid/标签。因此,在大多数情况下,您只需复制 ESP 中的文件即可合并 2 个 ESP。

    • 复制文件后,您需要进入bios界面删除NVRAM中的旧条目并创建新的条目。
    • 某些机器的启动项甚至包含特殊的 bcdobject uuid。但您不需要复制该信息。一旦您启动到 Windows,它可能会自行更新。
  • 不幸的是,有些机器不提供通过选择文件来创建启动项的选项。您只能选择磁盘。在有些机器上,您仍然可以使用 efibootmgr 来推送指向特定文件的条目。但是,dell 和 lenovo 笔记本电脑甚至不允许这种情况发生(令人惊讶的是,固件不允许在启动项中指定 /File)。它们实际上只能从EFI/BOOT/BOOT<arch>.efi然后您必须修改 bcd 菜单以允许通过 bcd 管理器运行 ubuntu efi 应用程序启动。但是,这种设置非常不稳定。因为任何来自 ubuntu 的 grub 更新或来自 windows 的 bcd 更新都可能弄乱这个设置。对于那些只有单个 ESP 的人来说,这真是个坏消息。

  • 所以最后,我决定在不同的 USB 闪存驱动器上安装引导加载程序。内部硬盘驱动器上根本没有 ESP。然后,当我决定切换系统时,我只需插入相应的 USB 驱动器(每台机器实际上不需要超过 2 个,只需一个用于所有 Windows 安装,一个用于 grub 管理的操作系统。)。这有点烦人,但工作非常稳定。您甚至可以通过简单地复制 EFI 分区的内容来获得多个备份。这确实是我找到的终极解决方案,在此之后,我再也没有遇到过单启动问题。我开始在我所有的机器上使用此方法,而不仅仅是作为那些不幸固件的解决方法。

相关内容