说明:
系统版本:CentOS 7.x
CentOS 7.x默认内核版本是Linux 3.10,我们需要部署K8s等项目需要高版本的内核。
Linux Kernel官方网站:https://www.kernel.org/
ELRepo源网站:http://elrepo.org/
一、升级系统
#检查当前 CentOS 系统版本
cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
#检查当前 CentOS 系统内核版本
uname -sr
Linux 3.10.0-1160.el7.x86_64
yum clean all #清除缓存
yum makecache fast #重新建立缓存
yum update -y #升级系统
reboot #重启系统
二、使用elrepo源升级内核
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 #备份文件
#查看最新版内核
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
内核版本说明:
#kernel-ml #主线版本,比较新
#kernel-lt #长期支持版本,比较旧
#安装新内核,这里安装主线版本
yum --enablerepo=elrepo-kernel install kernel-ml
三、设置系统默认内核
#查看系统上的所有可用内核
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)
#设置默认内核为我们刚才升级的内核版本
cp /etc/default/grub /etc/default/grub-bak #备份
grub2-set-default 0 #设置默认内核版本
vi /etc/default/grub
GRUB_DEFAULT=saved修改为:
GRUB_DEFAULT=0
:wq! #保存退出
#重新创建内核配置
grub2-mkconfig -o /boot/grub2/grub.cfg
#查看默认内核
grubby --default-kernel
grub2-editenv list
yum makecache #更新软件包
reboot #重启,现在系统默认内核已经是我们刚才升级后的最新版本
至此,CentOS升级系统内核到最新版教程完成。
扩展阅读:
#查看可以安装的内核版本
yum --enablerepo="elrepo-kernel" list --showduplicates | sort -r | grep kernel-ml.x86_64
#安装指定版本内核
yum --enablerepo="elrepo-kernel" install kernel-ml-5.13.1-1.el7.elrepo.x86_64 -y