本文主要是用来为CENTOS 7安装指定版本内核,方便后续开BBR,因为更换内核有时候涉及到软件的卸载,所以推荐重装后就更换。

环境:CentOS 7 7.9.2009 X64

第一步:

首先我们需要确定现在运行的是哪一个版本的内核,输入:

uname -r

返回

[root@ser-ca-1-2t ~]# uname -r
5.10.156-1.el7.x86_64

由此可知,我们使用的内核版本是5.10.156-1.el7.x86_64

第二步:

然后我们到https://dl.lamp.sh/kernel/el7/(这个网站是秋水逸冰的)里面去寻找最新的内核文件或者是你想要的内核版本号,我这里使用5.15.117-1.el7.x86_64这个版本,5.15属于LTS长期支持版。

Centos7一般只需下载这 3 个 rpm 文件即可。

kernel-ml-5.15.117-1.el7.x86_64.rpm
kernel-ml-devel-5.15.117-1.el7.x86_64.rpm
kernel-ml-headers-5.15.117-1.el7.x86_64.rpm

我们回到VPS的SHELL中,使用wget命令下载上述三个文件,下载完成后,执行以下命令安装:

yum localinstall kernel-ml-*

如果只更新部分文件,也可以只下载那个文件再执行这个命令。或者直接执行安装指定文件的命令:

yum localinstall kernel-ml-5.15.117-1.el7.x86_64.rpm
或
yum localinstall kernel-ml-devel-5.15.117-1.el7.x86_64.rpm
或
yum localinstall kernel-ml-headers-5.15.117-1.el7.x86_64.rpm

有时候kernel-ml-headers文件不一定会安装成功,如果提示安装不成功,可以考虑先卸载原来的kernel-ml-headers文件,可以参考:https://www.anidays.com/2023/73.html
成功安装后,执行以下命令查看本机已经存在的内核列表:

awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/grub2/grub.cfg

返回

0 : CentOS Linux (5.15.117-1.el7.x86_64) 7 (Core)
1 : CentOS Linux (5.10.156-1.el7.x86_64) 7 (Core)
2 : CentOS Linux (0-rescue-00a62363617944e08db8db894ba6145e) 7 (Core)

设置启动最新内核(一般最新安装的内核启动顺序为 0)

grub2-set-default 0

如果0不是最新的内核,这个数字就改成最新内核的数字。然后删除刚才下载的 rpm 文件。

rm -fv kernel-ml-*

然后再 reboot 重启系统,再次进入系统后,就是最新版的内核了,也可以使用以下命令查看:

uname -r

如果不是最新内核,请重复上一步选择内核启动操作,再来一次。多余内核的删除方法参考:https://www.anidays.com/2023/73.html

参考文件:
https://teddysun.com/648.html
https://www.jb51.net/article/265146.htm

最后修改:2024 年 10 月 23 日
如果觉得我的文章对你有用,请随意赞赏