CentOS 升级系统内核到最新版

一、升级系统


检查当前 CentOS 系统版本

1
2
cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)

检查当前 CentOS 系统内核版本

1
2
3
4
5
6
uname -sr
Linux 3.10.0-1160.el7.x86_64
yum clean all #清除缓存
yum makecache fast #重新建立缓存
yum update -y #升级系统
reboot #重启系统

二、使用elrepo源升级内核


1
2
3
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
cp /etc/yum.repos.d/elrepo.repo /etc/yum.repos.d/elrepo.repo.bak #备份文件

查看最新版内核

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
lable
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* elrepo-kernel: hkg.mirror.rackspace.com
Available Packages
kernel-lt.x86_64 5.4.129-1.el7.elrepo elrepo-kernel
kernel-lt-devel.x86_64 5.4.129-1.el7.elrepo elrepo-kernel
kernel-lt-doc.noarch 5.4.129-1.el7.elrepo elrepo-kernel
kernel-lt-headers.x86_64 5.4.129-1.el7.elrepo elrepo-kernel
kernel-lt-tools.x86_64 5.4.129-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs.x86_64 5.4.129-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs-devel.x86_64 5.4.129-1.el7.elrepo elrepo-kernel
kernel-ml-devel.x86_64 5.13.0-1.el7.elrepo elrepo-kernel
kernel-ml-doc.noarch 5.13.0-1.el7.elrepo elrepo-kernel
kernel-ml-headers.x86_64 5.13.0-1.el7.elrepo elrepo-kernel
kernel-ml-tools.x86_64 5.13.0-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs.x86_64 5.13.0-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs-devel.x86_64 5.13.0-1.el7.elrepo elrepo-kernel
perf.x86_64 5.13.0-1.el7.elrepo elrepo-kernel
python-perf.x86_64 5.13.0-1.el7.elrepo elrepo-kernel

内核版本说明

1
2
3
4
#kernel-ml #主线版本,比较新
#kernel-lt #长期支持版本,比较旧
#安装新内核,这里安装主线版本
yum --enablerepo=elrepo-kernel install kernel-ml

三、设置系统默认内核


查看系统上的所有可用内核

1
2
3
4
5
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.13.0-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.31.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-2aaf6a587102425da09a55cad51a2c2f) 7 (Core)

设置默认内核为我们刚才升级的内核版本

1
2
3
4
5
6
cp /etc/default/grub /etc/default/grub-bak #备份
grub2-set-default 0 #设置默认内核版本
vi /etc/default/grub
GRUB_DEFAULT=saved修改为:
GRUB_DEFAULT=0
:wq! #保存退出

重新创建内核配置

1
grub2-mkconfig -o /boot/grub2/grub.cfg

查看默认内核

1
2
3
4
grubby --default-kernel
grub2-editenv list
yum makecache #更新软件包
reboot #重启,现在系统默认内核已经是我们刚才升级后的最新版本

至此,CentOS升级系统内核到最新版教程完成。