centos7-kernel-upgrade-核心升級

菜阿發表於2024-11-04

CentOS7升級核心版本

yum安裝

參考1 參考2 參考3

首先檢視當前系統的核心版本

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 沒有找到可用的核心

image-20241029204248849 解決:

# 修改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下載地址

原始碼包下載地址

下載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

相關文章