CentOS 7 linux-firmware - 如何修剪它?

CentOS 7 linux-firmware - 如何修剪它?

CentOS 7 将许多固件包合并到“linux-firmware”中,并使它们成为内核的依赖项。有没有一种简单的方法来创建一个精简版本,删除那些我知道我不需要的固件包,因为我从未在同一平台上为 CentOS 6 安装过它们?

答案1

首先值得一提的是,linux-firmware源RPM中的源为多个RPM,其中一个是linux-firmware加上一些其他的(通常是WiFi相关的)固件文件。linux-firmware如果您小心的话,看起来用于在不同 RPM 之间拆分源文件的机制可以用于进一步修剪。

这个过程看起来应该是这样的:

  1. 下载linux-firmware源RPM并安装
  2. 复制 SPEC 文件,更新版本(添加前缀),以便您可以将您的版本与原始版本区分开,并另存为新的 SPEC 文件。
  3. 复制现有的%package -n%file -n代码来创建一个新的子包(我们称之为unwanted-firmware
  4. 在 SOURCE 目录中,解压源文件,以便您可以看到您想要/不想要的源
  5. 识别所有不需要的源(例如,我知道我正在使用的硬件中没有 WiFi 卡或 Radeon 显卡)并将适当的文件添加到文件列表中unwanted-firmware
  6. 完成后,重建linux-firmware,记住使用更新的 SPEC 文件。

您最终应该得到较小的自定义linux-firmwareRPM、新unwanted-firmwareRPM 以及创建的其他附加固件文件linux-firmware

您将需要彻底测试您的新系统并检查日志等是否有损坏的固件;如果你发现一些,那么你可能需要调整你的unwanted-firmware文件列表。

相关内容