在某些特定应用环境中,我们会涉及到Linux内核的源码修改和编译安装,通常是选择从kernel.org获取最新的稳定发行版内核进行修改并编译安装,但实际情况中,CentOS的内核是基于官方内核做了一些定制裁剪的,选用CentOS的内核源码包做一些适应性修改,重编译打包成RPM做分发会更适合生产需要,因此记录下源码包kernel.src.rpm的打补丁和重编译过程。
[root@localhost ~]#uname -a
Linux localhost 3.10.0-327.36.3.el7.x86_64 #1 SMP Mon Oct 24 16:09:20 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
//获取当前系统的内核版本号
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
//获取当前系统的发行版本号
[root@localhost ~]# wget http://vault.centos.org/7.2.1511/updates/Source/SPackages/kernel-3.10.0-327.22.2.el7.src.rpm
//从http://valut.centos.org 获取对应版本内核src源码包并下载,这里以kernel-3.10.0-327.22.2.el7.src.rpm为例.
[root@localhost ~]# rpm -ivh kernel-3.10.0-327.36.3.el7.src.rpm
//安装源码包,会在当前目录下创建一个 rpmbuild 文件夹
在安装过程中出现一下提示,builder用户名和组不存在提示可以忽略,官方的源码包是在builder用户下构建的.</