CentOS 6.X 默认使用的内核是2.6.x,由于docker比较火,想要在rhel6/centos6上运行docker需要将kernel升级到至少3.10以上版本。除此之外,比较知名的dirtycow脏牛漏洞在这些相应的kernel版本上可以注入提权,所以还是建议将内核升级到kernel4.x的版本。本篇涉及的升级主要还是通过第三方ELRepo源进行升级(云时代了,效率比较重要,源码编译可以了解,不建议通过源码升级)。

一、配置ELRepo源

内核的仓库地址,这个可在http://elrepo.org/tiki/tiki-index.php找到。该页面提供了rhel6/centos6 与 rhel7/centos7上的源配置方法:

1rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org (external link)    //导入公钥
2rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm (external link)   //给rhel7配置源
3rpm -Uvh https://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm (external link)  //配置rhel6的源

二、安装kernel

1[root@localhost ~]# yum --enablerepo=elrepo-kernel install kernel-lt -y

注:可选的kernel版本有 kernel-lt (参数lt表示long-term的意思,长期维护版本) 和 kernel-ml (ml=mainline 主线版本)。

kernel-update
kernel-update

三、修改grub

可以修改/etc/grub.conf ,也可以修改/boot/grub/grub.conf ,前者是软连接的后者,命令如下:

1sed -i 's/default=1/default=0/g' /etc/grub.conf
2sed -i 's/default=1/default=0/g' /boot/grub/grub.conf

完成后,reboot重启主机,重新进入系统后,可以通过uname -r 或uame -a查看。