说明:
系统版本:CentOS 7.x
CentOS 7.x默认内核版本是Linux 3.10,我们需要部署K8s等项目需要高版本的内核。
Linux Kernel官方网站:https://www.kernel.org/
ELRepo源网站:http://elrepo.org/
RPM包下载地址:
https://elrepo.org/linux/kernel/el7/x86_64/RPMS/
选择lt版本(长期支持)
kernel-lt-5.4.163-1.el7.elrepo.x86_64.rpm
kernel-lt-devel-5.4.163-1.el7.elrepo.x86_64.rpm
yum install wget -y
cd /usr/local/src
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-5.4.163-1.el7.elrepo.x86_64.rpm
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-devel-5.4.163-1.el7.elrepo.x86_64.rpm
yum install kernel-lt-5.4.163-1.el7.elrepo.x86_64.rpm -y
yum install kernel-lt-devel-5.4.163-1.el7.elrepo.x86_64.rpm -y
#注意:kernel-lt是内核包,kernel-lt-devel是与内核相匹配的内核开发环境,都需要升级,必须保证内核开发环境和内核版本一致。
三、设置系统默认内核
#查看系统上的所有可用内核
[root@localhost src]# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.4.163-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)
2 : 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 #重启,现在系统默认内核已经是我们刚才升级后的最新版本
#重启后查看内核版本
uname -r
#查看内核包信息
uname -a ; rpm -qa kernel\* | sort
[root@localhost ~]# uname -a ; rpm -qa kernel\* | sort
Linux localhost.localdomain 5.4.163-1.el7.elrepo.x86_64 #1 SMP Tue Nov 30 12:12:53 EST 2021 x86_64 x86_64 x86_64 GNU/Linux
kernel-3.10.0-1160.el7.x86_64
kernel-lt-5.4.163-1.el7.elrepo.x86_64
kernel-lt-devel-5.4.163-1.el7.elrepo.x86_64
kernel-tools-3.10.0-1160.el7.x86_64
kernel-tools-libs-3.10.0-1160.el7.x86_64
至此,CentOS升级系统内核到最新版教程完成。