步骤1:检查已安装的内核版本
让我们安装了一个发行版,它包含了一个特定版本的内核。为了展示当前系统中已安装的版本,我们可以:
#uname-sr
下面的图片展示了在一台CentOS7服务器上的输出信息:
在CentOS7上检查内核版本
还要考虑的一个重要的事情是内核版本的生命周期-如果你当前使用的版本接近它的生命周期结束,那么在该日期后将不会提供更多的bug修复。关于更多信息,请参阅内核发布页。
步骤2:在CentOS7中升级内核
大多数现代发行版提供了一种使用yum等包管理系统和官方支持的仓库升级内核的方法。
但是,这只会升级内核到仓库中可用的最新版本-。不幸的是,RedHat只允许使用前者升级内核。
与RedHat不同,CentOS允许使用ELRepo,这是一个第三方仓库,可以将内核升级到最新版本。
要在CentOS7上启用ELRepo仓库,请运行:
#rpm--importelrepo.org/RPM-GPG-KEY-elrepo.org#rpm-Uvhelrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
在CentOS7启用ELRepo
仓库启用后,你可以使用下面的命令列出可用的内核相关包:
#yum--disablerepo="*"--enablerepo="elrepo-kernel"listavailable
yum-找出可用的内核版本
接下来,安装最新的主线稳定内核:
#yum--enablerepo=elrepo-kernelinstallkernel-ml
在CentOS7中安装最新的内核版本
最后,重启机器并应用最新内核,接着运行下面的命令检查最新内核版本:
uname-sr
验证内核版本
步骤3:设置GRUB默认的内核版本
为了让新安装的内核成为默认启动选项,你需要如下修改GRUB配置:
打开并编辑/etc/default/grub并设置GRUB_DEFAULT=0。意思是GRUB初始化页面的第一个内核将作为默认内核。
GRUB_TIMEOUT=5GRUB_DEFAULT=0GRUB_DISABLE_SUBMENU=trueGRUB_TERMINAL_OUTPUT="console"GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/rootrd.lvm.lv=centos/swapcrashkernel=autorhgbquiet"GRUB_DISABLE_RECOVERY="true"
接下来运行下面的命令来重新创建内核配置。
#grub2-mkconfig-o/boot/grub2/grub.cfg
在GRUB中设置内核
重启并验证最新的内核已作为默认内核。