centos7 · 2023年6月30日

centos7 升级系统内核

要升级 CentOS 7.9 的内核,您可以按照以下步骤进行操作:

检查当前内核版本:使用以下命令检查当前系统中正在运行的内核版本:


uname -r
这将显示当前系统的内核版本号。

安装 ELRepo 存储库:ELRepo 是一个第三方存储库,提供了更新的内核版本。执行以下命令安装 ELRepo 存储库:


sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
安装新的内核:执行以下命令安装最新的稳定内核:


sudo yum --enablerepo=elrepo-kernel install kernel-ml
[root@jumpserver ~]# yum --enablerepo=elrepo-kernel install kernel-lt -y(长期稳定版本选这个)
这将安装 ELRepo 存储库中的最新稳定内核。请注意,"kernel-ml" 是内核的软件包名称。

步骤 3:设置 GRUB 默认的内核版本

为了让新安装的内核成为默认启动选项,你需要如下修改 GRUB 配置:

打开并编辑 /etc/default/grub 并设置 GRUB_DEFAULT=0。意思是 GRUB 初始化页面的第一个内核将作为默认内核。

[root@jumpserver ~]# vi /etc/default/grub

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved #这里的saved改为0即可,重启后,默认就是你上次所选的版本了。
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

 

更新 GRUB 配置:执行以下命令更新 GRUB 配置以识别新安装的内核:


sudo grub2-mkconfig -o /boot/grub2/grub.cfg
重新启动系统:完成安装后,重新启动系统以使新的内核生效:


sudo reboot
验证内核版本:系统重新启动后,使用以下命令验证新的内核版本:


uname -r
如果显示的版本号与您安装的新内核版本匹配,则表示内核升级成功。

请注意,内核升级可能会涉及系统的底层组件,因此请确保在执行这些步骤之前备份重要数据,并了解升级过程中的潜在风险。建议参考 CentOS 官方文档和 ELRepo 存储库的文档,以获取更详细的步骤和注意事项。

 

 

 

 

# 查看内核版本

[root@jumpserver ~]# uname -rs
Linux 3.10.0-1160.el7.x86_64

 

# CentOS 允许使用 ELRepo,这是一个第三方仓库,可以将内核升级到最新版本。
# 在CentOS 7上启用 ELRepo 仓库,运行如下命令:
# 导入该源的秘钥

[root@jumpserver ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

# 启用该源仓库

[root@jumpserver ~]# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

获取http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
获取http://elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
准备中… ################################# [100%]
正在升级/安装…
1:elrepo-release-7.0-4.el7.elrepo ################################# [100%]

# 查看有哪些内核版本可供安装

[root@jumpserver ~]# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

 

已加载插件:fastestmirror
Determining fastest mirrors
Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7 error was
12: Timeout on http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7: (28, ‘Connection timed out after 30000 milliseconds’)
* elrepo-kernel: elrepo.org
elrepo-kernel | 3.0 kB 00:00
elrepo-kernel/primary_db | 2.1 MB 00:03
可安装的软件包
elrepo-release.noarch 7.0-6.el7.elrepo elrepo-kernel
kernel-lt.x86_64 5.4.225-1.el7.elrepo elrepo-kernel
kernel-lt-devel.x86_64 5.4.225-1.el7.elrepo elrepo-kernel
kernel-lt-doc.noarch 5.4.225-1.el7.elrepo elrepo-kernel
kernel-lt-headers.x86_64 5.4.225-1.el7.elrepo elrepo-kernel
kernel-lt-tools.x86_64 5.4.225-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs.x86_64 5.4.225-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs-devel.x86_64 5.4.225-1.el7.elrepo elrepo-kernel
kernel-ml.x86_64 6.0.10-1.el7.elrepo elrepo-kernel
kernel-ml-devel.x86_64 6.0.10-1.el7.elrepo elrepo-kernel
kernel-ml-doc.noarch 6.0.10-1.el7.elrepo elrepo-kernel
kernel-ml-headers.x86_64 6.0.10-1.el7.elrepo elrepo-kernel
kernel-ml-tools.x86_64 6.0.10-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs.x86_64 6.0.10-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs-devel.x86_64 6.0.10-1.el7.elrepo elrepo-kernel
perf.x86_64 5.4.225-1.el7.elrepo elrepo-kernel
python-perf.x86_64 5.4.225-1.el7.elrepo elrepo-kernel

# 安装长期稳定版本,5.4.225-1.el7.elrepo

[root@jumpserver ~]# yum --enablerepo=elrepo-kernel install kernel-lt -y

 

已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo.el7 error was
12: Timeout on http://mirrors.elrepo.org/mirrors-elrepo.el7: (28, ‘Connection timed out after 30008 milliseconds’)
Could not retrieve mirrorlist http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7 error was
12: Timeout on http://mirrors.elrepo.org/mirrors-elrepo-kernel.el7: (28, ‘Connection timed out after 30000 milliseconds’)
* base: mirrors.bfsu.edu.cn
* elrepo: elrepo.org
* elrepo-kernel: elrepo.org
* extras: mirrors.nju.edu.cn
* updates: mirrors.bfsu.edu.cn
base | 3.6 kB 00:00
elrepo | 3.0 kB 00:00
extras | 2.9 kB 00:00
updates | 2.9 kB 00:00
(1/5): base/7/x86_64/group_gz | 153 kB 00:00
(2/5): extras/7/x86_64/primary_db | 249 kB 00:00
(3/5): base/7/x86_64/primary_db | 6.1 MB 00:00
(4/5): updates/7/x86_64/primary_db | 18 MB 00:01
(5/5): elrepo/primary_db | 449 kB 00:02
正在解决依赖关系
–> 正在检查事务
—> 软件包 kernel-lt.x86_64.0.5.4.225-1.el7.elrepo 将被 安装
–> 解决依赖关系完成

依赖关系解决

================================================================================
Package 架构 版本 源 大小
================================================================================
正在安装:
kernel-lt x86_64 5.4.225-1.el7.elrepo elrepo-kernel 50 M

事务概要
================================================================================
安装 1 软件包

总下载量:50 M
安装大小:228 M
Downloading packages:
kernel-lt-5.4.225-1.el7.elrepo.x86_64.rpm | 50 MB 00:09
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告:RPM 数据库已被非 yum 程序修改。
正在安装 : kernel-lt-5.4.225-1.el7.elrepo.x86_64 1/1
验证中 : kernel-lt-5.4.225-1.el7.elrepo.x86_64 1/1

已安装:
kernel-lt.x86_64 0:5.4.225-1.el7.elrepo

完毕!
[root@jumpserver ~]#
# 重启服务器,手动选择新安装的内核版本进入系统!!!

 

参考文章https://blog.csdn.net/weixin_46985491/article/details/128187880