Centos6源码升级内核
# 确定当前内核信息
[root@localhost ~]# uname -a
Linux localhost.localdomain 2.6.32-573.el6.x86_64 #1 SMP Thu Jul 23 15:44:03 UTC 2015 x86_64 x86_64 x86_64 GNU/Linu
# 安装依赖环境
[root@boy linux-3.10.90]# yum groupinstall Development Tools
[root@boy linux-3.10.90]# yum install ncurses-develqt-develhmaccalc zlib-devel binutils-devel elfutils-libelf-devel ncurses ncurses-devel
# 下载源码包:https://mirrors.edge.kernel.org/pub/linux/kernel/v3.x/linux-3.10.90.tar.gz
wget https://mirrors.edge.kernel.org/pub/linux/kernel/v3.x/linux-3.10.90.tar.xz -O /root/linux-3.10.90.tar.gz
[root@boy ~]# tar -zxvf linux-3.10.90.tar.gz
[root@boy ~]# cd linux-3.10.90
# 开始编译
# [root@boy linux-3.10.90]# make mrproper 删除之前编译所生成的文件和配置文件,备份文件等
[root@boy linux-3.10.90]# make menuconfig 根据需求选择自己要的功能,完成之后会生成一个.config文件,它保存了你的内核配置,/boot/config-2.6.32-573.el6.x86_64和刚刚的.conf是一样的,我们可以把/boot复制到当前目录
[root@boy linux-3.10.90]# make clean #确保所有东西均保持最新状态.
[root@boy linux-3.10.90]# make bzImage #生成内核文件
[root@boy linux-3.10.90]# make modules #编译模块
[root@boy linux-3.10.90]# make modules_install #安装模块
[root@boy linux-3.10.90]# make install #安装,编译安装完成后,它会自动把启动引导信息写入grub.conf文件中
[root@boy linux-3.10.90]# reboot
# menu选项含义
[*]:表示选取了该选项,编译好后的kernel就会有该功能
[ ]:表示未选取该项,编译后的kernel不会有此功能
<M>:表示选取了该选项,而且是编译成模块module的形式,它会在kernel被载入后被动态地加载,编译成module可以减少kernel image的空间,加快开机速度,方便以后修改
< >:表示未选取该项,但是该功能被当做module,今后可以在开机后另外载入