启动 14.04 LTS 时 tpm_tis 操作超时

启动 14.04 LTS 时 tpm_tis 操作超时

自从从 13.10 升级到 14.04(使用do-release-upgrade)后,我的计算机(Sony vgn-sz1vp)在启动时挂起了 4 分钟。

[    1.015598] tpm_tis 00:06: 1.2 TPM (device-id 0xB, rev-id 16)
[    1.019920] ACPI: Battery Slot [BAT1] (battery present)
[    1.321725] isapnp: No Plug & Play device found
[   93.668058] random: nonblocking pool is initialized
[  121.040029] tpm_tis 00:06: Operation Timed out
[  121.052385] tpm_tis 00:06: A TPM error (-62) occurred attempting to determine the timeouts
[  241.088029] tpm_tis 00:06: Operation Timed out
[  241.100484] tpm_tis 00:06: Could not get TPM timeouts and durations

到目前为止我已经尝试过:

  • 在 BIOS 中启用和禁用 TPM(无变化)
  • 在 /etc/modprobe.d/blacklist-local.conf 中为 tpm_tis(和其他 TPM 模块)添加黑名单项(无变化)

我可以向 grub 添加一个启动参数来告诉内核停止尝试与 TPM 硬件通信吗?

答案1

在启动菜单中按“ ”。在启动选项中添加以下e命令。您可以将其添加到 grub 文件中:nolapicro

编辑您的grub.cfg并更改

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nolapic"

保存文件,然后运行update-grub

答案2

修改我的文件中的以下几行/etc/default/grub解决了该问题:

GRUB_CMDLINE_LINUX_DEFAULT="acpi=nomsi quiet splash"
GRUB_CMDLINE_LINUX="tpm_tis.interrupts=0"

答案3

tpm 被编译到了原装 Ubuntu 内核中,因此无法通过启动参数或黑名单完全禁用它。

为了解决在装有 Linux Mint 17(基于 Ubuntu)的 Vaio SZ3 上出现的这个问题,我重建了内核并禁用了 tpm,如下所示:

跟随构建自己的内核对于基本流程,并附加以下内容:

  • 按照“修改配置”中所述运行 menuconfig 步骤。选择 Y 编辑“i386 generic”或“amd64 generic”配置(N 编辑所有其他配置)。进入 menuconfig 后,使用 / 命令搜索 CONFIG_IMA,按 1(或任何指示的数字)导航到它,然后按 N 禁用它。对 CONFIG_TPM 执行相同操作。我还禁用了 CONFIG_DEBUG_INFO 以减少构建所需的磁盘空间。
  • 在构建之前,touch debian.master/abi/i386/ignore(或 amd64)禁用 ABI 检查,该检查会由于缺少 TPM 和更改的哈希值而失败(如果您像我一样禁用 CONFIG_DEBUG_INFO)。
  • 在安装构建的 .deb 文件之前,你可能需要sudo apt-get install linux-tools-$(uname -r) linux-tools-common

请记住,您需要防止内核在将来自动更新,或者使用新版本再次执行此过程。

答案4

我也遇到过同样的事情修复效果很好

# edit /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash tpm_tis.force=1"

相关内容