Centos7系统升级内核版本
使用ELRepo仓库升级系统内核
查看内核版本 #
uname -r
uname -a
cat /etc/redhat-release
安装ELRepo yum源 #
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
查看可用的内核版本 #
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
...
kernel-lt.x86_64 4.4.155-1.el7.elrepo
kernel-lt-devel.x86_64 4.4.155-1.el7.elrepo
...
安装稳定版本内核 #
yum --enablerepo=elrepo-kernel install kernel-lt
设置引导(grub2) #
查看所有内核版本 #
sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (4.4.241-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
2 : CentOS Linux (0-rescue-651e1b90bb3149809cdeb8cc80e72c43) 7 (Core)
设置新的默认引导的内核版本 #
方法1
grub2-set-default 0 #其中 0 是上面查询出来的可用内核
方法2
vim /etc/default/grub
GRUB_DEFAULT=0 #其中 0 是上面查询出来的可用内核
grub2-mkconfig -o /boot/grub2/grub.cfg #生成 grub 配置文件
reboot # 重启机器
验证及删除旧内核(可选) #
uname -r # 查看内核版本
4.4.241-1.el7.elrepo.x86_64
yum install yum-utils
package-cleanup --oldkernels # 删除旧的内核版本
# 也可以使用 rpm -qa | grep kernel 先把所有的内核版本查询出来,然后使用 yum remove 删除掉旧的内核版本
升级失败的处理方法 #
如果发现升级内核版本并重启,发现机器无法启动,需要在开机进入引导内核选择界面手动选择老的内核启动,然后再讲默认引导的内核版本改回来的内核版本进行回滚。