昨天我在朋友电脑上安装 Linux 发行版,但无法启用 WiFi(Broadcom Limited BCM43142)。我一次又一次地切换驱动程序,重新启动计算机几次。经过长时间的调查,我终于弄清楚了为什么 WiFi 不可用:安全启动没有被禁用。
它终于可以正常工作了。但我想了解硬件/软件级别的幕后情况。这超出了我的知识和理解范围,我想更多地了解它是如何工作的。
如果此信息很重要,我以 EFI 模式安装了系统。
昨天我在朋友电脑上安装 Linux 发行版,但无法启用 WiFi(Broadcom Limited BCM43142)。我一次又一次地切换驱动程序,重新启动计算机几次。经过长时间的调查,我终于弄清楚了为什么 WiFi 不可用:安全启动没有被禁用。
它终于可以正常工作了。但我想了解硬件/软件级别的幕后情况。这超出了我的知识和理解范围,我想更多地了解它是如何工作的。
如果此信息很重要,我以 EFI 模式安装了系统。
开源驱动程序的问题在于并非所有驱动程序都是“签名”驱动程序。“签名”驱动程序是已使用数字身份代码签名证书签署的驱动程序,以表明开发人员的合法性。
许多开源驱动程序没有这个数字签名(这不是世界上最容易获得代码签名证书的事情,而且它并不便宜 - 每年 170 美元,它需要您提供作为企业的详细文档实体是真实的,根据法律可以被视为企业或组织),因此 SecureBoot 无法正确允许它们,因为它们不是“签名”和“安全”驱动程序。
在这些情况下,您必须禁用 SecureBoot。在 Windows 中,大多数驱动程序都经过签名,但您单独安装的开源驱动程序除外,这些驱动程序并不总是经过签名。
无论操作系统如何,SecureBoot 都需要签名的驱动程序。这只是额外的安全层,因此除非您一直在安装可疑的驱动程序等,否则是否打开或关闭 SecureBoot 以及您使用的硬件是否未签名并且您需要硬件取决于您因为它很关键,所以你别无选择,只能禁用 SecureBoot,或者自己签署驱动程序(由于各种原因可能不可行)。
不得不为 Linux 安装和驱动程序禁用 SecureBoot 的情况也并不少见,因为自从 SecureBoot 最初被引入以来,这种情况就很常见。
您还可以保持安全启动处于活动状态,并为自己的驱动程序签名,添加您自己的机器所有者密钥。