Coreboot 与 Libreboot:差异、优势、兼容性以及你需要知道的一切

  • Libreboot 是 Coreboot 发行版,它删除了所有专有组件,以提供最大的透明度和自由度。
  • Coreboot 更加灵活并支持更多硬件,但可能需要 blob 来实现某些高级功能或现代硬件。
  • 选择取决于您是否优先考虑完全自由或通过微代码块实现最新的兼容性和安全性。

coreboot 与 libreboot 对比

许多关注隐私和软件自由的用户都在寻找替代目前大多数笔记本电脑和主板预装的专有固件系统的方案。在此背景下,Coreboot和Libreboot这两个项目在自由软件和开源硬件社区中越来越受到关注。这两个项目的目标都是用开放的解决方案取代专有的 BIOS 和 UEFI,但它们在组件包含策略、硬件支持、易用性和整体理念方面存在显著差异。

本文将以最新资讯详细解释Coreboot 和 Libreboot 的定义、区别、优缺点以及各自的适用人群。您将了解到技术细节、安全性和自由度方面的考量,以及兼容性、安装便捷性和维护性等实际问题。如果您正考虑切换到开源固件,本文将为您提供所需的一切信息,助您做出最佳选择,避免任何意外情况。

什么是 Coreboot 和 Libreboot?

Coreboot是一个开源软件项目,旨在用轻量级、快速且开放的替代方案取代控制计算机启动过程的专有固件(通常称为 BIOS 或 UEFI)。其主要目标是初始化系统硬件、准备必要的启动环境并启动操作系统,并利用各种模块和有效载荷,例如 GRUB、SeaBIOS 甚至 Linux。它的开发面向技术人员和开发人员,允许在编译和安装过程中进行高度的灵活性和自定义。

Libreboot则是一个强调软件自由的 Coreboot 发行版。可以说,它秉承了与 Debian 相同的 Linux 理念:提供预配置的 Coreboot,安装简便,且完全不包含任何专有“blob”或二进制文件。Libreboot 自动化了编译、配置和安装过程,简化了最终用户的操作,并保证其发行版中不包含任何闭源代码,因此成为追求极致纯净和透明的用户的首选。

关于专有二进制文件(blob)的政策

这两个项目的主要区别之一在于它们对专有二进制文件(也称为“blob”)的处理方式。Coreboot 将自身定位为一个务实的项目,允许在编译过程中选择包含或排除这些blob。这意味着,虽然 Coreboot 的核心是开源的,但一些底层驱动程序(例如 CPU 微代码或某些图形和网络芯片的固件)通常仅由硬件制造商以专有二进制文件的形式提供。如果您需要仅以blob形式存在的特定功能,Coreboot 允许您自行承担风险将其集成。

然而,Libreboot采取了更为严格的立场。它不允许在其发行版中包含任何闭源二进制组件。这意味着它仅支持那些拥有完全免费驱动程序或这些固件并非基本运行所必需硬件的平台。因此,Libreboot 支持的笔记本电脑和主板型号较少,但作为回报,它保证了完全自由、可审计且透明的使用体验。

硬件兼容性和支持

不同的 Blob 策略直接影响支持的设备数量。Coreboot的兼容性更广:它兼容众多主板、笔记本电脑(包括一些较新的机型)、服务器和嵌入式设备。如果您需要与最新的硬件、当前的 CPU 或需要 Blob 才能充分发挥性能的现代芯片组兼容, Coreboot 通常是理想之选。

另一方面, Libreboot主要支持较老的Intel 和 AMD 处理器,这些处理器的初始化不依赖于专有固件(或已开发出开源替代方案的固件)。这意味着许多受支持的型号可以追溯到 Core 2 Duo 时代、一些较老的 ThinkPad 系列以及部分主板。如果您已经拥有兼容的笔记本电脑或台式机,Libreboot 可以让您通过免费且安全的固件延长其使用寿命。但是,如果您想使用最新的硬件,Coreboot 可能是您唯一的选择。

更新和维护

另一个重要方面是更新的频率和便捷性。Coreboot采用滚动发布开发模式:其代码不断变化和改进,并定期发布代码库快照。它拥有活跃的全球开发者和贡献者社区,因此通常能够快速集成新功能、支持新设备并发布安全补丁。

另一方面,Libreboot 会在认为改动足够显著时发布稳定版本。它通常会整合自己的补丁来确保稳定性和易用性,并且更侧重于帮助最终用户避免手动编译。它还提供可直接安装的 ROM 镜像以及详细的安装说明,并且通常优先考虑稳定性和易用性,而不是立即添加新功能。

微码和安全

最具争议的话题之一是CPU的微代码,这是一种小型固件,制造商(英特尔、AMD等)可以对其进行更新,以纠正处理器运行中的错误或漏洞。无论是否更新,微代码都存在于芯片本身;更新的作用是“修补”内部运行机制,以纠正错误或添加功能(例如,虚拟化支持或安全缓解措施)。

在现代平台上,忽略微代码更新会带来安全风险,因为这会使系统暴露于已知的漏洞或缺陷之下。然而,这些补丁通常以二进制文件(blob)的形式分发,这对于那些希望避免在机器上使用任何闭源代码的用户来说是个难题。Libreboot秉承其理念,在任何情况下都不会包含这些补丁,因此某些漏洞无法在仅兼容 Libreboot 的硬件上得到修复。Coreboot则将选择权留给了用户:您可以根据自身判断选择是否包含这些补丁,并自行承担相应的风险和收益。

在一些老旧系统上,例如某些 ThinkPad X200 或类似系列,启用某些功能(例如虚拟化)可能需要安装正确的微代码,而这只能通过能够加载这些二进制文件的固件来实现。在这种情况下,如果您安装 Libreboot,某些高级硬件功能(例如 IOMMU 虚拟化或与某些操作系统的兼容性)可能无法使用。其背后的政治和技术立场很明确:自由与最新的安全保障之间的权衡。

易于安装和用户体验

许多人想知道哪种选择更容易安装和维护。 Libreboot 脱颖而出,因为它消除了大部分技术复杂性:提供自动化构建和配置系统(lbmk)、支持硬件的预编译 ROM 映像,以及面向非专业用户的详尽文档。该流程旨在最大限度地减少错误,即使没有高级知识的用户也能轻松使用免费固件。

另一方面,Coreboot 仍然需要相当高的技术水平:你需要为你的设备型号编译固件,选择要包含的二进制文件(如果有),选择有效载荷,并手动调整配置参数。它主要面向开发者、黑客、创客和硬件爱好者。如果你有学习和实验的动力,它是一个非常强大的选择,但同时也伴随着更高的风险和更陡峭的学习曲线。

有效载荷和启动选项

两种系统都允许你在硬件初始化完成后选择不同的有效载荷或引导加载程序。GRUB和SeaBIOS是 x86 系统上最常见的。

  • 自由靴 它通常包含适用于 x86/x86_64 的 GRUB 和 SeaBIOS,以及适用于 ARM64 的 U-Boot。它允许您在启动时在它们之间进行选择,并提供类似于传统启动管理器的体验。
  • 核心引导 它可以与许多其他有效载荷配合使用,包括直接启动 Linux 内核甚至 OpenBSD。这使其在自定义或嵌入式环境中具有极大的灵活性。
Libreboot 25.06
相关文章:
Libreboot 25.06 正式发布,提供对旧平台的全新支持和关键更新

局限性和实际问题

有些限制是两个系统共同的,其他限制则取决于 Coreboot 和 Libreboot 之间的选择:

  • 最大 RAM 和 CPU 支持取决于硬件;Coreboot 和 Libreboot 都无法修改这些限制,因为它们是物理的。
  • 缺少更新的微代码可能会限制某些功能,尤其是虚拟化和缓解最近的漏洞。
  • 安装这些系统可能会导致您的保修失效,如果操作不当,可能会导致您的硬件无法使用(或“变砖”)。请务必仔细遵循说明。
  • 大多数安装 Coreboot/Libreboot 的用户选择 Linux因为 ACPI 支持(Windows 必需)不完整或不足以稳定运行。由于 Coreboot 中 ACPI 实现的减少,Windows 带来了更多困难。
  • 固件配置通常不像传统配置那样提供图形 BIOS 菜单,因此高级设置需要命令行输入或重新编译。
Libreboot 25.04
相关文章:
Libreboot 25.04 支持新主板和最新操作系统。

安全和自由的影响

安装开源固件在安全性和控制方面具有明显的优势,因为专有固件通常包含遥测功能、后门或用户无法控制的有意或无意的漏洞。在开源世界中,安全补丁和代码审查都是公开的,从而最大限度地降低了出现意外情况的风险。

然而,绝对的自由是以牺牲功能和支持为代价的。您可能会发现,您的最新硬件不受支持,您需要花费更多精力来安装驱动程序,或者某些高级功能(例如硬件虚拟化、高级 PCI 设备分配以及 Spectre/Meltdown 漏洞的缓解措施)需要 Libreboot 禁止使用而 Coreboot 则将其作为可选方案的二进制文件。

社区和贡献

这两个项目都欢迎贡献,无论是在开发、文档编写还是用户支持方面。Libreboot尤其便于协作进行翻译、测试新主板或维护文档。其网站和论坛的组织结构通常都很完善,即使是新手也能轻松参与贡献。

Coreboot 的输入更具技术性,但您也可以通过测试新配置、报告错误、发布指南或帮助维护硬件兼容性列表来做出贡献。

总结

最终,Coreboot 和 Libreboot 之间的选择取决于您的优先级。您是否愿意牺牲一些功能,以换取完全开源软件的安全性?如果是,那么 Libreboot 更适合您。您是否重视使用现代硬件、享受所有功能,并且愿意在必要时接受一定程度的闭源代码?如果是,那么Coreboot 是更好的选择。

对许多人来说,这项决定也是对科技行业的政治宣言。开源固件是一种赋权工具,也是对抗那些施加限制并故意使硬件过时的制造商的有力武器。使用、修改、研究和共享软件的自由应该是一项普遍权利,而这些替代方案有助于我们更接近这一权利。

Coreboot 和 Libreboot 之间的选择应该基于您的需求、您的硬件以及您对软件和 blob 自由的态度:

  • 自由靴 它专为那些重视安全性、透明度和对自身设备控制权的自由软件爱好者而设计,即使这意味着使用一些较旧的硬件。对于那些想要一个完全可审计的系统,没有封闭的二进制文件或后门,并且不介意放弃一些高级功能或最大兼容性的用户来说,它是理想之选。
  • 核心引导 这是那些寻找 当前兼容性、现代硬件支持以及完全的灵活性,并在必要时务实地接受 blob 的引入。如果您熟悉软件编译和高级配置,并且喜欢动手实践,那么它是最强大、最通用的选择。

在 Google 中将其添加为首选来源