如何保存安全启动密钥?

如何保存安全启动密钥?

我正在运行 Windows 7,我的主板是华硕 p8z77-v。

我想要双启动 ubuntu,但是 live usb 无法加载。

我做了一些研究,发现我需要禁用安全启动。

为了做到这一点,我需要保存平台密钥。

但是当我将 USB 插入系统并选择选项“保存密钥”时,我收到一条消息“无有效文件系统”。我已将 USB 格式化为 exFat,并尝试了所有 USB 端口,但似乎没有任何效果。

编辑:我的主要目标是实现 ubuntu 与 windows 7 双启动。如果有办法做到这一点而不用摆弄这些设置,我会很乐意去做。

我面临的问题是,当我从启动时,UEFI: USB我得到了 UEFI 菜单。但是当我选择

  1. 安装,或
  2. 尝试不安装选项,

屏幕闪烁,然后变黑。一段时间后,我的显示器进入低电量状态,因此什么也没有发生。

答案1

PeterSiul 的回答是大多正确,但请参阅我的评论,其中有几处更正,其中一条非常重要,我在此详细说明。我想强调和详细说明一些我无法塞进那条简短评论中的观点:

  • 并非所有 EFI 都提供安全启动功能-- 如果您没有看到任何禁用安全启动的选项,则可能是您的固件缺少此功能。它在 Windows 8 发布前不久开始出现在计算机中。今天,大多数计算机都支持安全启动,但 Mac 和一些服务器仍然缺少此功能。我有几台基于 EFI 或 UEFI 的计算机缺少安全启动支持。
  • Windows 7 不正式支持安全启动-- 微软开始在 Windows 8 上推广安全启动,而不是 Windows 7。话虽如此,当我在我的其中一台电脑上安装 Windows 7 时(使用华硕 P8-H77I 主板,仅供参考),令我惊讶的是,它在安全启动处于活动状态时可以正常工作。但是,在更新之后,它停止工作了。也许微软签署了其部分 Windows 7 引导加载程序,但没有签署其他;或者也许我的主板包含原始引导加载程序的哈希值,认为其有效,因此能够通过安全启动测试。但最重要的是,如果您启动 Windows 7,则可能需要禁用安全启动。
  • 禁用安全启动不需要删除密钥-- 在我见过的每一台支持安全启动的电脑上,你都可以用开关禁用安全启动,然后从同一菜单重新启用它。删除密钥是不是执行此操作是必需的,当您重新启用安全启动时,应该不需要重新添加密钥。请参阅我的这个页面有关禁用安全启动的几个示例,包括屏幕截图。话虽如此,规范中没有说明禁用安全启动的用户界面应该如何布局,因此可以想象您遇到了一种特别原始的方法,需要删除密钥。不过,我认为这不太可能;更有可能的是,您只是没有找到正确的选项,甚至您的主板不支持安全启动。
  • 你是否真的需要禁用安全启动吗?-- 您说您需要禁用安全启动才能启动 Ubuntu USB 驱动器。但根据我的经验,人们经常将问题归咎于安全启动,而实际上不是与此功能相关的问题。最常见的情况是,人们在从文件创建 USB 闪存驱动器时使用了错误的工具或设置.iso。请参阅我的这个页面有关此主题的更多信息。不过,在您深入研究之前,我注意到您说当您尝试启动时,“屏幕会闪烁并且变黑”。安全启动失败通常(但并非总是)会产生一条消息,提示启动介质不受信任。您描述的症状听起来更像是不支持的视频卡。AskUbuntu 网站有这个问题及其众多答案这个问题。不幸的是,许多原因很多不同的解决方案,所以如果这是问题的根源,我无法给您一个简单的答案。
  • Shim 的全部目的是通过 GRUB 支持安全启动-- PeterSui 写道“但是 Shim 无法检查 GRUB 的完整性,也无法检查 Linux 或 Windows 引导加载程序(如果由 grub 加载)的完整性。因此,只要您使用双启动,安全启动基本上就会失效。”这完全是错误的;事实上,如果这种描述准确的话,Shim 就会完全无用。Shim 启动一个后续程序,该程序被硬编码为grubx64.efi。(在某些情况下它可以启动其他程序,但后续程序通常是 GRUB。)Shim 将其二进制文件中嵌入的密钥添加到安全启动检查中,并且发行版附带的 GRUB 将由该密钥的私有版本签名。因此,Shim 启动 GRUB如果GRUB 由 Shim 的嵌入式密钥或固件中的另一个密钥签名,但如果未通过安全启动检查,它将拒绝启动 GRUB。不同的 GRUB 版本有所不同,但在大多数情况下,GRUB 会回调 Shim 以验证其启动的内核,等等。当 GRUB 启动 Windows 引导加载程序时,它也应该经过身份验证,尽管有一个已知错误导致此过程失败一些(但不是全部)计算机。
  • 如果你真的想,你可以保存你的钥匙-- 如果您确实想保存默认密钥,您可以这样做。请参阅我的这个页面了解具体操作方法。该页面实际上是为了帮助你代替您可以使用自己的密钥替换内置密钥,但该过程的一部分是保存现有密钥。大多数 EFI 都提供了在自己的用户界面中执行此操作的方法,或者您可以使用 KeyTools 实用程序。(向下滚动到使用 KeyTool 替换按键并注意步骤#3。)

答案2

exFAT 不是最广泛采用的文件系统。我不指望它能与 UEFI 兼容。正如 Bob 所写:试试 FAT32。

再说一次,您不需要保存这些密钥,也不需要禁用安全启动(尽管这两者都不会对您造成伤害)。

通常,具有 UEFI 的双启动系统的启动过程如下:UEFI 加载引导加载程序,对于 Linux,通常是 GRUB。GRUB 查看其配置,找到一个用于 Linux 的条目和一个用于 Windows 的条目。Linux 条目将加载内核,可能还有 initramfs。Windows 条目将启动 Windows 引导加载程序。

使用安全启动时,UEFI 将检查引导加载程序(在上面的示例中为 GRUB)是否由它可以验证的密钥签名。Windows 引导加载程序是这种情况,但 grub 不是。因此,为了启动非 Windows 系统,Microsoft 发布了一个名为 Shim 的迷你引导加载程序。Shim 由 Microsoft 签名,因此可以在安全启动处于活动状态的情况下使用 UEFI 启动。但是 Shim 无法检查 GRUB 的完整性,也无法检查 Linux 或 Windows 引导加载程序(如果由 grub 加载)的完整性。因此,只要您使用双启动,安全启动基本上就无效了。

另一方面,Ubuntu 应该可以正常启动,无论是从 USB 启动还是安装后启动(我说应该,因为尽管我读过的所有文档都说“可以”,但我过去不得不禁用安全启动才能运行 Linux)。如果安全启动会阻止这种情况,那么就会阻止 GRUB 加载。在这种情况下,您甚至无法进入“安装”/“尝试不安装”选项。

相关内容