帮助中心 >  行业资讯 >  云计算 >  centos7停止维护后,怎么升级内核

centos7停止维护后,怎么升级内核

2025-01-16 11:27:59 34

在使用 CentOS 的过程中,常常会面临各种挑战,其中一个重要的方面就是内核的升级问题。随着应用环境的不断发展,高版本的应用对内核的要求也日益提高,因此内核升级变得不可或缺。然而,当 CentOS 7 停止维护后,内核的升级过程就不再像以往那样简单,会遇到诸多新情况。


但是在 centos 7 停止维护之后,无法使用 yum 直接升级内核,执行下面的命令时,已经不显示内核版本了。


[root@k8s-master01 ~]# yum list available --disablerepo=* --enablerepo=elrepo-kernel
Loaded plugins: fastestmirror, langpacks
Repository epel is listed more than once in the configuration
Loading mirror speeds from cached hostfile
 * elrepo-kerne
 l: mirrors.tuna.tsing
 hua.edu.cn
 elrepo-kernel                                                   | 3.0 kB  00:00:00                                                                                                                                           
 elrepo-kernel/primary_db                                            | 2.2 kB  00:00:00    
 Available Packageselrepo-release.noarch        7.0-8.el7.elrepo       elrepo-kernel


关于内核种类:


    kernel-ml :ml = mainline,主流版本

    kernel-lt :lt = long-term ,长期有效


ML 与 LT 两种内核类型版本可以共存,但每种类型内核只能存在一个版本。

kernel rpm 历史版本:

image.png

导入公钥

image.pngimage.png

查看内核版本

[root@k8s-master01 ~]# uname -r
3.10.0-1160.119.1.el7.x86_64

开始安装新版本的内核

[root@k8s-master01 ~]# rpm -ih kernel-ml-6.9.7-1.el7.elrepo.x86_64.rpm
################################# [100%]
Updating / installing...
################################# [100%]
[root@k8s-master01 ~]# rpm -ih kernel-ml-devel-6.9.7-1.el7.elrepo.x86_64.rpm
################################# [100%]
Updating / installing...
################################# [100%]
[root@k8s-master01 ~]# rpm -ih kernel-ml-headers-6.9.7-1.el7.elrepo.x86_64.rpm
 error: Failed dependencies:
       kernel-headers < 6.9.7-1.el7.elrepo conflicts with kernel-ml-headers-6.9.7-1.el7.elrepo.x86_64


kernel-ml-headers 安装时提示冲突报错

要解决这个问题,需要先重启到最新的内核,然后卸载旧内核,再次安装即可。


查看已安装的内核版本:


[root@k8s-master01 ~]# awk -F\\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux 7 Rescue c699e4abb55f41d2894c5e5d076ece00 (6.9.7-1.el7.elrepo.x86_64)
1 : CentOS Linux (6.9.7-1.el7.elrepo.x86_64) 7 (Core)
2 : CentOS Linux 7 Rescue 3708a8c5ffaf41ec8c2b6c256447b9d3 (3.10.0-1160.119.1.el7.x86_64)
3 : CentOS Linux (3.10.0-1160.119.1.el7.x86_64) 7 (Core)
4 : CentOS Linux (0-rescue-e824c70f6df443479545152398478c6f) 7 (Core)


可以看到最新安装的内核是 0 ,所以需要将最新内核 0 设置为默认引导。

[root@k8s-master01 ~]# grub2-set-default 0


生成 grub配置文件

[root@k8s-master01 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.9.7-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-6.9.7-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-1160.119.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1160.119.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-3708a8c5ffaf41ec8c2b6c256447b9d3
Found initrd image: /boot/initramfs-0-rescue-3708a8c5ffaf41ec8c2b6c256447b9d3.img
Found linux image: /boot/vmlinuz-0-rescue-5ea3132971dd43e59cf37c5576c6ec0e
Found initrd image: /boot/initramfs-0-rescue-5ea3132971dd43e59cf37c5576c6ec0e.img
Found linux image: /boot/vmlinuz-0-rescue-e824c70f6df443479545152398478c6f
Found initrd image: /boot/initramfs-0-rescue-e824c70f6df443479545152398478c6f.img
done


重启服务器

[root@k8s-master01 ~]# reboot


最后再安装 kernel-ml-headers

[root@k8s-master01 ~]# rpm -ih kernel-ml-headers-6.9.7-1.el7.elrepo.x86_64.rpm################################# [100%]Updating / installing...################################# [100%]


查看当前的内核版本

[root@k8s-master01 ~]# uname -r6.9.7-1.el7.elrepo.x86_64


通过以上一系列操作,我们成功解决了 CentOS 7 停止维护后内核升级的问题。尽管过程中遇到了诸如 kernel-ml-headers 安装冲突等困难,但最终还是实现了内核的顺利更新,为我们在更高版本应用环境下的使用提供了保障。


想了解更多CentOS相关的分享欢迎上蓝队云官网查询,更多免费技术学习文档,蓝队云期待与您一起探索。

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: