在实际的生产环境中由于一些bug或内核功能限制需要打开内核的一些参数,就要用到手工编译内核,编译方法下面介绍如下: 
编译环境 
centos7.2 min安装 
安装开发工具
# yum install gcc* ncurses-devel bc openssl openssl-devel libssl-dev perl rpm-build -y
- 1
 
下载内核
# wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.9.11.tar.xz
- 1
 
解压
# xz  -d linux-4.9.11.tar.xz # tar -xvf  linux-4.9.11.tar # cd  linux-4.9.11 # make menuconfig
- 1
 - 2
 - 3
 - 4
 
如果.config不存在,运行make menuconfig时的缺省设置由固化在各个Kconfig文件中各项目的缺省值决定。
	如果.config存在,运行make menuconfig时的缺省设置即是当前.config的设置,若对设置进行了修改.config将被更新。 
按多次ESC键退出保存 
开始编译rpm,时间比较长,请耐心等待。约1h
# make rpm 
- 1
 
生成位置:
/root/rpmbuild/SRPMS/kernel-4.9.11-2.src.rpm /root/rpmbuild/RPMS/x86_64/kernel-4.9.11-2.x86_64.rpm