背景:

目前遇到有几家客户有数机器内核版本为3.10.0-693.11.6.el7.youdata.x86_64

问题现象:

机器docker服务负载较高后会有概率触发低版本内核bug,导致机器重启或者机器状态异常

系统日志会有如下字段信息:

切换机器内核版本操作 - 图1

处理方法:

rpm -qa|grep kernel #查看有无其他高版本内核

切换机器内核版本操作 - 图2

如果有直接切换内核启动顺序即可,然后重启机器

如果没有,就传一个高版本的内核rpm包,然后rpm安装即可。

rpm -Uvh 上传的rpm包

查看内核启动顺序:

uefi启动:

awk -F\' '$1=="menuentry " {print $2}' /boot/efi/EFI/centos/grub.cfg

如下图所示,1160的排在第一个,设置启动顺序数字就为0,0表示第一个,1表示第二个,以此类推。

切换机器内核版本操作 - 图3

2.bios启动

awk -F\' '$1=="menuentry " {print $2}' /boot/grub2/grub.cfg

设置内核启动顺序:

grub2-set-default 0 #0,1,2代表上述查看的启动顺序第1,2,3个

然后重启机器使其生效。

重启机器之前为了稳妥起见,可以查看下开机自启项有无禁用,服务停服备份数据,然后再操作。