我已经编写了一个 RPM 规范,其中对 kernel-devel 包有要求。然而,安装任何 kernel-devel 包就可以满足。我如何指定 RPM 需要当前运行内核版本的内核开发包。
例如,我们的客户可能正在运行 3.10.0-514,但最新的是 3.10.0-693。如果您执行“yum install -y kernel-devel”,您将获得最新版本的 header ,满足我的 RPM 中的“Requires”行。我想确保安装的 header 适用于 3.10.0-514。
最佳答案
你不能。多年来我一直在争论这个问题。
您也不能使用触发器来监视 kernel-devel
何时安装,因为安装时它仍然与运行的内核版本不匹配。
我使用的解决方案是将自定义脚本放入 /etc/init.d/
(或 systemd 等价物),每次操作系统启动时都会按需重新编译驱动程序新内核。而且它足够聪明,可以识别源是否不存在,并告诉用户也升级它。
关于linux - RPM 需要当前安装的内核的内核开发包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47944108/