注册 MOK 后无法启动 Ubuntu 18.04.2 LTS 或其 LiveUSB

注册 MOK 后无法启动 Ubuntu 18.04.2 LTS 或其 LiveUSB

注册 MOK 后,我无法启动 Ubuntu 18.04.2 LTS 或其 Live USB。以下是导致这种情况的步骤。

  1. 在 Dell Precision T7910 工作站上全新安装 Ubuntu 18.04.2 LTS。此机器上未安装其他操作系统。
  2. 使用 UEFI LiveUSB 安装操作系统。安全启动已开启。
  3. 为 Nvidia Titan-X 显卡安装了 nvidia-430 专有驱动程序。安装提示我输入密码以注册 MOK。重新启动时,MOK 管理屏幕要求输入密码以注册密钥。我成功注册了密钥。此后我已多次重新启动系统。一切正常。
  4. 主板故障。已更换新主板。重置戴尔服务标签后系统启动正常。在安全启动开启的情况下重启了几次。没有问题。
  5. 用 AMD 卡替换了 Nvidia 显卡。Ubuntu 中的默认驱动程序运行良好。但我想使用最新的驱动程序。从 AMD 网站下载了驱动程序。安装提示我设置密码以使用 MOK 注册密钥。重新启动机器。使用相同的密码使用 MOK 注册密钥。重新启动后,我现在面临以下错误,随后机器关闭。

无法触发 tcg2 最终事件表:参数无效

出现严重错误:import_mok_state() 失败

: 无效的参数

从 Ubuntu 的 LiveUSB 安装程序启动时会显示相同的错误消息,然后机器关闭。无论安全启动设置为开启还是关闭,我都会收到此错误消息。

我可以在传统模式下成功启动 LiveUSB。但是我无法使用 efibootmgr 实用程序(请参阅第二个答案这里) 来修复 EFI 分区中的加载程序。为了使用 efibootmgr 实用程序,我需要以 UEFI 模式启动。但尝试以 UEFI 模式启动 Ubuntu Live USB 会导致出现上述错误消息并导致系统关闭。

我找到了另一个相关主题这里。但是,由于我无法以 UEFI 模式从 LiveUSB 启动,因此我无法执行任何 EFI 操作。

我能够启动系统救援光盘启用安全启动。我删除了启动盘上的所有分区。尝试从 LiveUSB 重新安装 Ubuntu,但遇到了相同的错误消息。我成功安装了 Windows 10,它在安全模式下启动正常。接下来,我再次删除了所有分区,并决定仔细查看所有 BIOS 设置。

打开 TPM。现在我可以从安全启动模式下的 LiveUSB 启动。但如果我关闭 TPM,它会恢复到之前的错误消息。打开 TPM 后,我从 LiveUSB 重新安装了操作系统。选择安装其他视频驱动程序,它要求我设置使用 Mok 注册密钥的密码。重新启动后,Mok Manager 出现并要求我输入注册密钥的密码。我照做了,现在我可以从启动盘启动 Ubuntu(只要 TPM 设置为 ON)。

问题:

  1. 为什么需要打开 TPM 才能使安全启动正常工作?我第一次安装 ubuntu 时它没有打开,但安全启动工作正常。
  2. 既然我能够安全启动到操作系统,我可以做些什么来使安全启动在没有 TPM 的情况下工作?

答案1

经过大量搜索,我发现了以下内容这里

EUFI 包含已注册的受信任机构数据库。用户可以将自己的受信任机构添加到该数据库中,以便加载非 Microsoft 操作系统。

这就是使用可信平台模块 (TPM) 的地方。TPM 可用于存储密钥,或执行加密/签名/验证例程。TPM 与 UEFI 相结合,允许验证引导加载程序并加载操作系统。

因此看起来专有的 Nvidia 和 AMD 显示驱动程序希望将其密钥存储在 TPM 中。

TPM 有两种令人困惑的模式设置 - 活动和启用。它们的含义不同。在我的 Dell Precision 工作站上,活动显示为“TPM 开启”复选框。在此状态下,TPM 的某些功能可用。这些功能包括密钥存储和查找。“启用”表示 TPM 功能齐全;它可用于加密磁盘等。这解释了为什么 TPM 必须处于“开启”或“活动”状态才能启动 Ubuntu(尤其是使用专有显示驱动程序),但无需“启用”TPM 进行安全启动。

有了这种理解,我随后使用文章删除旧的和不必要的密钥。

相关内容