centos7-kernel-upgrade-内核升级
CentOS7升级内核版本
yum安装
首先查看当前系统的内核版本
uname -rs
导入ELRepo仓库的公钥信息
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
安装指令
# RHEL-7, SL-7 or CentOS-7
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
# RHEL-8
yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
# RHEL-9
yum install https://www.elrepo.org/elrepo-release-9.el9.elrepo.noarch.rpm
查看可用版本
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
问题: RHEL-7 没有找到可用的内核
解决:
# 修改elrepo.repo文件的elrepo-kernel的部分,替换baseurl,如果有mirrorlist,前面加#注释掉
[elrepo-kernel]
name=ELRepo.org Community Enterprise Linux Kernel Repository - el7
baseurl=https://mirrors.aliyun.com/elrepo/archive/kernel/el7/$basearch/
# mirrorlist=http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
protect=0
# 清除yum缓存后重新构建缓存
yum clean all && yum clean dbcache && yum makecache
手动升级安装内核
下载rpm包
- kernel-lt-5.4.278-1.el7.elrepo.x86_64.rpm
- kernel-lt-tools-5.4.278-1.el7.elrepo.x86_64.rpm
- kernel-lt-tools-libs-5.4.278-1.el7.elrepo.x86_64.rpm
本地安装
yum localinstall -y kernel-lt-5.4.278-1.el7.elrepo.x86_64.rpm kernel-lt-tools-5.4.278-1.el7.elrepo.x86_64.rpm kernel-lt-tools-libs-5.4.278-1.el7.elrepo.x86_64.rpm
# 可能和本地tools包有冲突,把旧版本remove掉即可
查看系统中kernel信息
# 查看已经安装的内核,可以看到有新安装的5.4.278版本
grubby --info=ALL | grep ^kernel
kernel=/boot/vmlinuz-5.4.278-1.el7.elrepo.x86_64
kernel=/boot/vmlinuz-3.10.0-1160.119.1.el7.x86_64
kernel=/boot/vmlinuz-3.10.0-957.el7.x86_64
kernel=/boot/vmlinuz-0-rescue-439410e29e454c50af1945d12f037511
# 查看当前默认内核
grubby --default-kernel
修改默认内核版本
grubby --set-default "/boot/vmlinuz-5.4.278-1.el7.elrepo.x86_64"
重启并查看当前版本
# 重启
reboot
# 查看当前版本
uname -rs
查看已经安装的内核包
rpm -qa | grep kernel
kernel-lt-tools-5.4.278-1.el7.elrepo.x86_64
kernel-3.10.0-957.el7.x86_64
kernel-lt-tools-libs-5.4.278-1.el7.elrepo.x86_64
kernel-lt-5.4.278-1.el7.elrepo.x86_64
kernel-3.10.0-1160.119.1.el7.x86_64
# 可以看情况remove老版本的kernel