centos 7 获取内核源码

2017/09/0611:59:28 发表评论

centos 7.1 中默认的内核源码路径为 /usr/src/uname -r,但是它不包含源码,只包含了Kconfig 和 Makefile

查看系统内核版本

uname -r  #查看系统内核cat /etc/redhat-release   #操作系统版本12

输出结果 
内核版本:3.10.0-229.el7.x86_64 
操作系统版本:CentOS Linux release 7.1.1503 (Core)

下载相应版本的内核源码包

下载的地址http://vault.centos.org/ 
找到相应的系统版本号,进入 
例如:7.1.1503 
在网页http://vault.centos.org/7.1.1503/updates/Source/SPackages/ 
下载对应版本内核源码包:kernel-3.10.0-229.20.1.el7.src.rpm

环境配置

1.首先安装(升级)一些依赖包

sudo yum install rpm-build redhat-rpm-config asciidoc hmaccalc perl-ExtUtils-Embed pesign xmlto
sudo yum install audit-libs-devel binutils-devel elfutils-devel elfutils-libelf-develsudo 
yum install ncurses-devel newt-devel numactl-devel pciutils-devel python-devel zlib-devel bison123

2.创建源码的编译目录树,目的源码存放地址

mkdir -p ~/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
echo '%_topdir %(echo $HOME)/rpmbuild' > ~/.rpmmacros12

3 安装到编译目录 
在kernel-3.10.0-229.20.1.el7.src.rpm所在的目录下

rpm -i kernel-3.10.0-229.20.1.el7.src.rpm 2>&1 | grep -v exist
cd ~/rpmbuild/SPECS
rpmbuild -bp --target=$(uname -m) kernel.spec123

最终的内核源码应该在下面的目录下

~/rpmbuild/BUILD/kernel-*/linux-*/

  • 微信扫码赞助
  • weinxin
  • 支付宝赞助
  • weinxin

发表评论

您必须才能发表评论!