CentOS内核定制

时间:2023-03-09 07:30:43
CentOS内核定制

版本号:1.0.1

作者:石硕

更新:2014-05-09 15:04:53

============================================================

出于工作须要。定制CentOS内核,以改进TCP的传输效率,怎样改进这里暂且不提,以下重点解说怎样获取源代码,编译。

1. 编译前的准备

以【root】用户安装下列组件:

su root

yum -y groupinstall "Development Tools"

yum -y install ncurses-devel qt-devel

yum -y install rpm-build redhat-rpm-config asciidoc hmaccalc perl-ExtUtils-Embed xmlto

yum -y install audit-libs-devel binutils-devel elfutils-devel elfutils-libelf-devel

yum -y install newt-devel python-devel zlib-devel

2. 安装内核的源码组件

【注】必须使用【非root】用户运行命令

rpm -i http://vault.centos.org/6.5/updates/Source/SPackages/kernel-2.6.32-431.11.2.el6.src.rpm 2>&1 | grep -v mock



附:kernel-2.6.32-431.11.2.el6.src.rpm 源在国外。下载速度可能会比較慢。能够借助BGP机房或VPN加速。



附源码地址:

http://vault.centos.org/6.5/os/Source/SPackages/

http://vault.centos.org/6.5/updates/Source/SPackages/

3. 解压及预备源码文件

【注】必须使用【非root】用户运行命令

cd ~/rpmbuild/SPECS

rpmbuild -bp --target=$(uname -m) kernel.spec



附:如今内核的源码文件夹树能够在 ~/rpmbuild/BUILD/kernel*/linux*/ 这个文件夹内找得到。

4. 编译新内核

【注】必须使用【非root】用户运行命令

cd ~/rpmbuild/SPECS

rpmbuild -bb --with baseonly --without debug --without debuginfo --target=`uname -m` kernel.spec 2> build-err.log | tee build-out.log

附:此过程可能须要花费90分钟左右,请耐心等待。

附:如今自己定义内核的 rpm 文件能够在 ~/rpmbuild/RPMS/`uname -m`/ 文件夹内找到。

5. 安装新内核

【注】必须使用【root】用户运行命令

su root

rpm -ivh kernel-*.rpm

6. 验证

重新启动,查看内核版本号

uname -a





參考资料:

[1]CentOS Wiki http://wiki.centos.org/zh/HowTos/Custom_Kernel#head-981e27f326384c58516d3b2051b225526bb0a50a