Centos和Ubutun系统内核升级操作

教程大全 2026-01-08 06:24:29 浏览

在日常运维中有时候会出现内核版本过低,导致一系列的问题,比如k8s使用3.10会出现cgroup内存泄漏,或者有的软件依赖内核版本,最近我在安装Pixie就需要内核版本大于4.14+,因此就专门总结了centos和ubutun操作系统的内核升级操作步骤

1 centos7升级内核

1.1 检查已安装的内核版本

让我们安装了一个发行版,它包含了一个特定版本的内核。为了展示当前系统中已安装的版本,我们可以:

如果我们现在进入,在撰写本文时,我们看到最新的内核版本是5.12(其他版本可以从同一网站获得)。还要考虑的一个重要的事情是内核版本的生命周期 - 如果你当前使用的版本接近它的生命周期结束,那么在该日期后将不会提供更多的 bug 修复。关于更多信息,请参阅内核发布页。

1.2 升级内核

大多数现代发行版提供了一种使用 yum 等包管理系统和官方支持的仓库升级内核的方法。但是,这只会升级内核到仓库中可用的最新版本 - 而不是在中可用的最新版本。不幸的是,Red Hat 只允许使用前者升级内核。与 Red Hat 不同,CentOS 允许使用 ELRepo,这是一个第三方仓库,可以将内核升级到最新版本。ELRepo 仓库是基于社区的用于企业级 Linux 仓库,提供对 RedHat Enterprise (RHEL) 和 其他基于 RHEL的 Linux 发行版(CentOS、Scientific、Fedora 等)的支持。ELRepo 聚焦于和硬件相关的软件包,包括文件系统驱动、显卡驱动、网络驱动、声卡驱动和摄像头驱动等。要在 CentOS 7 上启用 ELRepo 仓库,请运行:

1.3 查看可用的系统内核包

仓库启用后,你可以使用下面的命令列出可用的内核相关包:可以看到5.4和5.12两个版本

1.4 安装最新版本内核

对于centos操作系统,直接使用yum进行rpm包安装,可以避免一些依赖的问题,但是默认会安装最新版本内核,如果不需要的话,可以自己到网站下载对应版本,然后指定版本安装,设置 GRUB 默认的内核版本

内核安装好后,需要设置为默认启动选项并重启后才会生效

查看系统上的所有可用内核:

设置新的内核为grub2的默认版本

Centos

服务器上存在4 个内核,我们要使用 5.12 这个版本,为了让新安装的内核成为默认启动选项,可以通过 grub2-set-default 0 命令或编辑 /etc/default/grub 文件来设置

生成 grub 配置文件并重启

验证

已升级成功

题外话

没有外网,制作离线内核升级包

删除旧内核

查看系统中全部的内核:

方法1、yum remove 删除旧内核的 RPM 包

方法2、yum-utils 工具

如果安装的内核不多于 3 个,yum-utils 工具不会删除任何一个。只有在安装的内核大于 3 个时,才会自动删除旧内核。

2 Ubutun升级内核

2.1 环境

在虚拟机上运行的Ubuntu16.04 , 使用命令uname -r查看当前系统内核版本 当前版本为4.15.0-45-generic 要升级的内核为4.20.2

2.2 准备需要的材料

到网址[~kernel-ppa/mainline/]下载要升级的内核版本

选择对应的文件,我的是amd64

使用命令下载(也可以网页下载)

2.3 安装

直接使用dpkg命令安装下载好的deb包

安装完成后,重启ubuntu系统 使用命令uname -r查看当前版本号

内核升级成功。

2.4 遇到问题及解决方案

* 遇到问题

升级ubuntu 16.04的新内核时出现依赖libssl1.1.0问题

解决方案

需要安装包 libssl1.1, 直接使用命令会安装失败,需要更添加源,这个包的更新数据ubuntu官方认可的源才能更新。到该网址去查看[或者单独下载安装一个libssl1.1_1.1.0g-2ubuntu4.1_amd64.deb文件然后再dpkg -i *.deb升级就可以了

原文链接:

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐