一、查看系统版本
cat /etc/redhat-release
uname -a
uname -r
可以确认是centos那个版本如:centos 7.9,具体的内核版本,如:3.10.0-1160.el7.x86_64
二、导入elrepo的key,然后安装elrepo的yum源
适用centos各个版本
rpm -import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
选择一个yum源安装,我看到centos7.4有人用7.0.2 ,7.9有人用7.0.3,我目前看到最新的是7.0.6,所以安装的7.0.6,可根据实际情况选择一条命令安装
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-6.el7.elrepo.noarch.rpm
三、列出内核
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
四、安装内核
安装长期支持稳定版本
yum --enablerepo=elrepo-kernel install -y kernel-lt
# lt = long time 长期支持内核
# ml=mainline 稳定主线内核
安装最新的主线稳定内核
yum --enablerepo=elrepo-kernel install kernel-ml
可以根据实际用途选择,这里我默认选择长期支持稳定版本
四、查看现在系统全部内核
rpm -qa | grep kernel
#查看内核的顺序
awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
五、设置开机从新内核启动
方法一:
根据上面检查的内核名称,命令awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
填入:
grub2-set-default 'CentOS Linux (5.4.217-1.el7.elrepo.x86_64) 7 (Core)'
#重启检查内核
reboot
uname -r
方法二(备用):
我这边,5.4版本内核目前位置为4(位置1的为0,位置2的为1,一次类推),原来的3.10版本内核目前位置为1,所以需要修改内核启动顺序为4
#根据上面内核的顺序去调整
vim /etc/default/grub
#原本的GRUB_DEFAULT=saved改为GRUB_4=saved,其中4就是当前的位置
#重新创建应用内核配置
grub2-mkconfig -o /boot/grub2/grub.cfg
#重启检查内核
reboot
uname -r
方法三(备用): 打开并编辑 /etc/default/grub 并设置 GRUB_DEFAULT=0。意思是 GRUB 初始化页面的第一个内核将作为默认内核。
GRUB_TIMEOUT=5
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
接下来运行下面的命令来重新创建内核配置。
grub2-mkconfig -o /boot/grub2/grub.cfg
六、移除旧内核(可选)
yum remove 3.10.0-1160.el7.x86_64 -y