[problem help] V23无法开启安全启动
Tofloor
poster avatar
Iresee
deepin
2024-10-11 22:52
Author

错误提示如下:

erifiying shim SBAT data failed: Security Policy Violation

Something has gone seriously wrong: SBAT self-check failed: Security Policy Viol at ion

Reply Favorite View the author
All Replies
阿尼樱奈奈
Moderator
2024-10-12 06:55
#1

deepin在某些机型不支持安全启动

Reply View the author
谢克辉
deepin beta test group
2024-10-12 07:20
#2

参考这篇帖子

https://bbs.deepin.org/zh/post/277398

Reply View the author
jjcui8595
deepin
2024-10-12 08:51
#3

这是正常的。请参考“豆包”AI给出的解释:

很多 Linux 版本必须关闭 BIOS 安全启动才能引导,主要有以下原因:

  1. 数字签名认证问题:
  • 缺乏官方签名支持:BIOS 安全启动会验证操作系统引导程序和内核的数字签名。微软等公司在硬件出厂时预设了操作系统厂商的白名单,只有拥有被认可的数字签名的操作系统才能通过安全启动的验证。而很多 Linux 发行版背后的公司或社区不在这个白名单里,因为获取数字签名需要一定的费用且手续较为麻烦,并且部分 Linux 发行版所推崇的开源自由等哲学与这种认证机制不太相符,一些社区可能也不符合白名单的审核要求。
  • 自行编译内核的影响:一些 Linux 版本允许用户自行编译内核,技术上这种内核的“发布者”是用户自己,其数字签名自然无法被 BIOS 安全启动所认可。
  1. 引导程序的兼容性问题:
  • 引导程序差异:Linux 系统常用的引导程序如 GRUB(Grand Unified Bootloader)等与 Windows 系统的引导方式有很大不同。BIOS 安全启动对引导程序的验证机制是基于特定的标准和规范,而部分 Linux 的引导程序可能无法完全满足这些要求,导致在安全启动开启的情况下无法正常引导系统。
  • 老旧硬件和 BIOS 版本的限制:一些较旧的硬件设备和 BIOS 版本对安全启动的支持不够完善,与 Linux 系统的兼容性较差。即使是一些相对较新的硬件,也可能由于 BIOS 固件的设计问题或存在的一些漏洞,导致在开启安全启动时无法正确识别和加载 Linux 系统的引导程序。
  1. 安全启动的实现方式与 Linux 系统架构的冲突:
  • 安全启动的限制:安全启动的设计初衷是为了防止恶意软件侵入,但它的实现方式在一定程度上限制了操作系统对硬件的直接访问和控制。Linux 系统作为一个高度可定制和灵活的操作系统,需要对硬件进行底层的操作和访问来实现各种功能,而安全启动的限制可能会影响到 Linux 系统的正常运行和引导。
  • 内核模块和驱动的加载:Linux 系统的内核模块和驱动程序在加载过程中可能会被安全启动机制视为潜在的安全威胁而被阻止加载,尤其是一些第三方的内核模块和驱动,这会导致系统无法正常启动或者部分功能无法正常使用。
Reply View the author
Iresee
deepin
2024-10-12 11:49
#4
阿尼樱奈奈

deepin在某些机型不支持安全启动

这个和系统有关吧,在这台机器上Ubuntu支持开启安全启动

Reply View the author
Iresee
deepin
2024-10-12 11:50
#5
谢克辉

参考这篇帖子

https://bbs.deepin.org/zh/post/277398

Deepin是通过认证的啊

Reply View the author
Iresee
deepin
2024-10-12 11:51
#6
jjcui8595

这是正常的。请参考“豆包”AI给出的解释:

很多 Linux 版本必须关闭 BIOS 安全启动才能引导,主要有以下原因:

  1. 数字签名认证问题:
  • 缺乏官方签名支持:BIOS 安全启动会验证操作系统引导程序和内核的数字签名。微软等公司在硬件出厂时预设了操作系统厂商的白名单,只有拥有被认可的数字签名的操作系统才能通过安全启动的验证。而很多 Linux 发行版背后的公司或社区不在这个白名单里,因为获取数字签名需要一定的费用且手续较为麻烦,并且部分 Linux 发行版所推崇的开源自由等哲学与这种认证机制不太相符,一些社区可能也不符合白名单的审核要求。
  • 自行编译内核的影响:一些 Linux 版本允许用户自行编译内核,技术上这种内核的“发布者”是用户自己,其数字签名自然无法被 BIOS 安全启动所认可。
  1. 引导程序的兼容性问题:
  • 引导程序差异:Linux 系统常用的引导程序如 GRUB(Grand Unified Bootloader)等与 Windows 系统的引导方式有很大不同。BIOS 安全启动对引导程序的验证机制是基于特定的标准和规范,而部分 Linux 的引导程序可能无法完全满足这些要求,导致在安全启动开启的情况下无法正常引导系统。
  • 老旧硬件和 BIOS 版本的限制:一些较旧的硬件设备和 BIOS 版本对安全启动的支持不够完善,与 Linux 系统的兼容性较差。即使是一些相对较新的硬件,也可能由于 BIOS 固件的设计问题或存在的一些漏洞,导致在开启安全启动时无法正确识别和加载 Linux 系统的引导程序。
  1. 安全启动的实现方式与 Linux 系统架构的冲突:
  • 安全启动的限制:安全启动的设计初衷是为了防止恶意软件侵入,但它的实现方式在一定程度上限制了操作系统对硬件的直接访问和控制。Linux 系统作为一个高度可定制和灵活的操作系统,需要对硬件进行底层的操作和访问来实现各种功能,而安全启动的限制可能会影响到 Linux 系统的正常运行和引导。
  • 内核模块和驱动的加载:Linux 系统的内核模块和驱动程序在加载过程中可能会被安全启动机制视为潜在的安全威胁而被阻止加载,尤其是一些第三方的内核模块和驱动,这会导致系统无法正常启动或者部分功能无法正常使用。

Deepin是国内首家支持安全启动的Linux发行版,在这台机器上Ubunt是支持安全启动的,你的意思是主板厂家限制了Deepin?

Reply View the author
谢克辉
deepin beta test group
2024-10-12 13:37
#7
Iresee

Deepin是通过认证的啊

不是认证的问题,好像是windows更新引起的问题

Reply View the author
jjcui8595
deepin
2024-10-12 16:37
#8
Iresee

Deepin是国内首家支持安全启动的Linux发行版,在这台机器上Ubunt是支持安全启动的,你的意思是主板厂家限制了Deepin?

只是说你的机器BIOS白名单中可能没有你的deepin签名,也可能是所用内核问题,可以更新内核试试。

Reply View the author
Iresee
deepin
2024-10-12 16:43
#9
jjcui8595

只是说你的机器BIOS白名单中可能没有你的deepin签名,也可能是所用内核问题,可以更新内核试试。

好的,感谢

Reply View the author
Iresee
deepin
2024-10-12 17:42
#10
谢克辉

不是认证的问题,好像是windows更新引起的问题

关闭了win的安全启动,依旧不行,ubuntu测试可以开启安全启动

Reply View the author