Debian Linux Kernel 和 Linux-libre 有什么区别?

sal*_*man 13 debian linux-kernel linux-libre

在自由相关问题方面,Debian Linux Kernel 和 Linux-libre 之间有什么区别?

我知道 Debian Linux 内核可以加载非自由模块,而在 Linux-libre 中它们已被列入黑名单。

Ste*_*itt 13

您已经确定了几乎唯一的区别:Debian 内核可以加载固件,而 Linux-libre 内核则不能。两个内核都是自由软件,即使就自由软件基金会而言——FSF 认为 Debian GNU/Linux 发行版是自由软件,只要除了主要版本之外没有使用任何存储库;他们对 Debian 的问题是 Debian 在同一基础设施上托管非自由存储库。

从哲学上讲,您可以认为差异如下:

  • Debian 内核不包含任何非自由固件(除了错误),但它允许用户加载非自由固件,如果他们愿意的话;
  • Linux-libre 内核不包含任何非自由固件或任何看起来像固件的东西,它阻止用户加载非自由固件,即使他们希望这样做。

Linux-libre 是通过deblob在内核源代码上运行脚本来构建的。这会遍历内核源代码,并进行各种与固件相关的更改:

  • 保留源代码可用的任何固件,但脚本确保源代码可用;
  • 任何需要固件的模块都被剥夺了加载固件的能力;
  • 任何看起来像固件(数字序列)的源代码都被删除;
  • 任何仅包含固件(例如的内容firmware/radeon)的文件都将被删除。

在某些情况下,Linux-libre 需要做一些额外的工作来恢复功能;例如,radeon模块被修改,以便一些r600支持的卡仍然可以使用,即使没有固件。(在deblob脚本中寻找“类似的东西可能也适用于其他 radeon 卡。” )

Debian发行包括一个固件包,firmware-linux-free; 这仅包含可用源代码的固件。非免费存储库还包含许多从 构建的固件包firmware-nonfree,但这些不是主要发行版的一部分。