shimx64.efi 为何突然消失?

shimx64.efi 为何突然消失?

概括:

在启用 UEFI 并禁用安全启动的情况下安装了 Ubuntu 后,我重新启用了安全启动并将其添加shimx64.efi为可执行。然后在 BIOS 的启动菜单中,我选择了shimx64.efi,Ubuntu 16.04.1 启动了。我想在不手动选择 的情况下看到它启动shimx64.efi,于是我重新启动了,这次 Windows 10 启动了。因此我转到 UEFI 启动优先级并移至shimx64.efi顶部并重新启动。启动的仍然是 Windows。重新启动后,我打开了启动菜单并特别选择了启动shimx64.efi。然后 Windows 启动了。

较长的版本:

在新的 Acer Aspire E 15 上,我首先设置了 Windows 10,然后从 SD 安装了 Ubuntu 16.04.1。由于对 UEFI 不太熟悉,我仍然启用了安全启动。在安装过程中,它说如果我想安装第三方驱动程序,需要禁用安全启动。它还提示我创建一个密码,它会在重启后提示我输入密码。*安装后,Ubuntu 从未启动(因此从未提示输入该密码)。
*根据我对它的解释的理解,密码是一次性使用的,以在下次启动时证明我不是攻击者。我相信它是安全启动的临时替代品,因为 Ubuntu 必须禁用它。

然后我又安装了一次,覆盖了最初的 Ubuntu 安装。这次我将启动系统切换为传统/BIOS,没有意识到它需要是 UEFI,因为 Windows 是用 UEFI 安装的。

了解到这一点后,我进行了第三次安装,再次覆盖了之前的 Ubuntu 安装。安装前我禁用了安全启动,但安装后我再次启用了它,以便可以将其添加shimx64.efi为受信任。然后我shimx64.efi通过 BIOS 的启动菜单启动,Ubuntu 启动正常。关闭它后,我决定看看是否可以让它在无需手动干预的情况下启动到 Ubuntu。结果,Windows 启动了。再次关闭它后,我将 UEFI 启动顺序改为最shimx64.efi上面。仍然默认启动到 Windows。所以我进入 BIOS 的启动菜单,shimx64.efi再次手动选择。然后再次它启动了 Windows。

重要相关问题

在我第一次安装 Ubuntu 后,我在选择 UEFI 文件为可信文件时遇到了麻烦,因为在HDD0 > <EFI> > <ubuntu> 没有什么显示在那个窗格中,甚至没有<.><..>,当前目录和父目录。所以我按下ESC并再次选择“选择一个 UEFI 文件作为受信任的执行文件”。<OEM><Microsoft><Boot>目录(<ubuntu>目录的兄弟目录)似乎有正常的内容。

然而现在当我去那里时,我再次看到没有什么<ubuntu>目录中。这一变化发生的时间恰好与我预期启动的是 Ubuntu 时(或者可能是在我成功启动 Ubuntu 时)启动到 Windows 时的意外情况相同。此外,如果我没记错的话,顶层除了HDD0另一个选项(类似于<boot>,但现在也消失了)。

我还没有找到其他关于无法shimx64.efi从 BIOS 访问该文件的报告,当然也没有找到它消失的报告(实际上是整个目录的内容消失<ubuntu>)。

我一直称之为“BIOS”,*可能更准确地说是“设置实用程序”,其名称为“InsydeH2O 设置实用程序”,版本为“Rev. 5.0”。名称中的“H2O”可能为零而不是字母 O,因为无法在字体中区分。
*我推断(可能不正确)UEFI 和 BIOS 都只是启动管理系统,而传统上用于配置 BIOS 的设置实用程序被称为 BIOS。

现在启动管理器中显示的唯一选项是 Windows 启动管理器。shimx64.efi当我执行“清除所有安全启动设置”或禁用安全启动时,该选项可能已经消失。请记住,这不是我所做操作的准确日志,因为我在操作过程中进行了大量故障排除。

笔记

理想情况下,我希望能够通过 GRUB 在 Ubuntu 和 Windows 之间进行选择。

我在第一次和最后一次安装之前检查了 SD 中是否存在错误,但未发现任何错误。

问题

  1. 为什么shimx64.efi从 UEFI 菜单中消失了?
  2. 我怎样才能将其取回(或以其他方式修复引导)?

答案1

我知道您已经通过从计算机中删除 Windows 解决了问题;但是,问题可能是由 Windows 快速启动和/或休眠功能引起的。这些功能可能会使 Windows 访问分区(包括EFI 系统分区,引导加载程序驻留的位置)处于不一致状态。 您必须在 Windows(版本 8 及更高版本)和其他任何系统(包括 Ubuntu)的双启动中禁用这些功能。 请参阅这里这里CHKDSK了解有关如何禁用这些功能的信息。请注意,禁用这些功能后,您可能需要从 Windows 或Linux执行dosfsck,并可能恢复已丢失的文件。

此外,一些 EFI 在使用小型或 FAT16 ESP 时会遇到问题。因此,我建议将 ESP 的大小设为 550 MiB。这个大小足够大,以至于像 FAT32 这样的工具mkdosfs会将其设为 FAT32,而不是 FAT16;并且它足够大,可以解决一些 EFI 在小型 FAT 文件系统上遇到的问题。

相关内容