我正在构建第三个工具,它依赖于Linux kernel
源代码。
Linux kernel
该工具通过指定发布版本uname -r
,结果为:
3.10.0-862.el7.x86_64
不过我在下没找到这个源代码/usr/src/
,我想我应该自己安装源代码。
我使用下面的命令来安装它:
yum install kernel-source kernel-devel
好消息是我拿到了 下的源代码/usr/src/kernels
,坏消息是 的版本是3.10.0-957.27.2.el7.x86_64
,它与 的输出不一致uname -r
。
如何才能获得与指定版本完全一致的源代码uname -r
?
提前感谢您的帮助。
答案1
yum
如果您可以通过可以访问的存储库获取内核版本,那么通过 指定内核版本可能会有帮助。
sudo yum install -y kernel-devel-3.10.0
如果您有源 RPM,则可以使用 rpm2cpio 和 cpio。
rpm2cpio kernel-3.10.0-862.el7.src.rpm | cpio -idmv
这是一个镜像到 kernel-3.10.0-862.el7.src.rpm这是我在 Google 上快速搜索后找到的。因此,完整的命令集如下:
wget ftp://ftp.pbone.net/mirror/ftp.redhat.com/pub/redhat/linux/enterprise/7Server/en/RHEV/SRPMS/kernel-3.10.0-862.el7.src.rpm
rpm2cpio kernel-3.10.0-862.el7.src.rpm | cpio -idmv