AlmaLinux、CentOS、Rocky Linux 8 如何更新到 Linux 内核 5.15
请访问原文链接:https://sysin.org/blog/centos-8-upgrade-kernel/,查看最新版。原创作品,转载请保留出处。
作者:gc(at)sysin.org,主页:www.sysin.org
以前使用 ELRopo 更新 CentOS 内核比较常见,AlmaLinux 和 Rocky Linux 如何更新内核呢,方法是一样的。
请注意:Linux Kernel 5.15 当前在 ELRepo 中仍然属于 mainline stable,有可能在 RHEL 9 系列发布后正式成为 LTS。
引言:Linux Kernel 5.15 LTS
11 月 21 日,著名的 Linux 内核开发人员 Greg Kroah-Hartman 宣布发布 Linux 内核 5.14.21,这是第 21 个维护更新,也是该系列的最后一个。是的,没错,Linux 5.14 现在在 上被标记为 EOL(生命周期结束),kernel.org 网站 并且将不再受支持。
“请注意,这是最新的 5.14.y 内核版本。 现在是生命的尽头。 请在此时移至 5.15.y 内核分支” Greg Kroah-Hartman 在 邮件列表公告中说。
然而,好消息是您将升级到最近发布的 Linux 5.15 内核,这是一个 LTS(长期支持)系列,至少支持几年,直到 2023 年 10 月。
Linux 内核 5.15 为 Linux 内核带来了许多优点,例如全新且功能齐全的 NTFS 文件系统实现、内核中的 SMB 服务器、实时抢占锁定、新的 Btrfs 功能、每 VLAN 多播支持、对 Nintendo 的支持 Wii 控制台、新的 gpio-virtio 驱动程序、DAMON(数据访问监控器)以及许多其他可以玩的好东西。
不用多说,如果您的 GNU/Linux 发行版使用的是 Linux 内核 5.14,您应该考虑尽快升级到 Linux 内核 5.15。如果您不能自己完成,您应该要求您的发行版的维护者将内核包升级到最新的 Linux 5.15 版本。
可以预见,未来的 Linux 发行版可能大量采用 5.15 内核版本,目前 RHEL 9 Beta 是 5.14 版本。
Longterm release kernels
Version | Maintainer | Released | Projected EOL |
---|---|---|---|
5.15 | Greg Kroah-Hartman & Sasha Levin | 2021/10/31 | Oct, 2023 |
5.10 | Greg Kroah-Hartman & Sasha Levin | 2020/12/13 | Dec, 2026 |
5.4 | Greg Kroah-Hartman & Sasha Levin | 2019/11/24 | Dec, 2025 |
4.19 | Greg Kroah-Hartman & Sasha Levin | 2018/10/22 | Dec, 2024 |
4.14 | Greg Kroah-Hartman & Sasha Levin | 2017/11/12 | Jan, 2024 |
4.9 | Greg Kroah-Hartman & Sasha Levin | 2016/12/11 | Jan, 2023 |
4.4 | Greg Kroah-Hartman & Sasha Levin | 2016/1/10 | Feb, 2022 |
为什么要更新内核
升级内核一般是为了支持新特性、新设备、新功能。为了测试最新的软硬件产品特性,升级内核比较常见。使用 ELRepo 升级内核变得非常简单。
ELRepo 简介
项目主页:http://elrepo.org
欢迎使用 ELRepo,这是 Enterprise Linux 软件包的 RPM 存储库。ELRepo 支持 Red Hat Enterprise Linux (RHEL) 及其衍生产品,如 Scientific Linux、CentOS Linux、Alma Linux 和 Rocky Linux。
ELRepo 项目专注于与硬件相关的软件包,以增强您对 Enterprise Linux 的体验。这包括文件系统驱动程序、图形驱动程序、网络驱动程序、声音驱动程序、网络摄像头和视频驱动程序。
ELRepo 存储库内容
ELRepo 包含四个频道。 您可以通过单击其名称来浏览每个频道的内容。
- elrepo
这是主通道,默认启用。 由于此频道不应包含发行版中也存在的软件包,因此在启用此存储库频道的情况下运行 “yum 更新” 应该是安全的。
例如安装 kmod-r8168(Realtek r8168 网卡驱动):
yum install kmod-r8168
根据正在安装的软件包或存储库设置,可能需要禁用非 elrepo 存储库:
yum --disablerepo=\* --enablerepo=elrepo install kmod-nvidia
- elrepo-extras
elrepo-extras 频道提供了替换 / 更新 RHEL 分发包的包及其依赖项。 它可以在 /etc/yum.repos.d/elrepo.repo 文件中启用或与 “yum --enablerepo=elrepo-extras” 一起使用。
- elrepo-testing
elrepo-testing 频道提供尚未发布到主频道的软件包,默认情况下处于禁用状态。 它可以在 /etc/yum.repos.d/elrepo.repo 文件中启用或与 “yum --enablerepo=elrepo-testing” 一起使用。
- elrepo-kernel
elrepo-kernel 频道使用 Linux Kernel Archives 长期支持内核(已为 RHEL-7 配置)和最新的稳定主线内核(已为 RHEL-8 和 RHEL-7 配置)。 请参阅 kernel-lt 或 kernel-ml 页面以获取更多详细信息。 该频道可以在 /etc/yum.repos.d/elrepo.repo
文件中启用或与 “yum --enablerepo=elrepo-kernel” 一起使用。
启用 ELRepo
从 CentOS 8 开始,ELRepo 已经加入到官方软件仓库中,名称为 “elrepo-release”。
AlmaLinux 和 Rocky Linux 同样适用。
启用 ELRepo 只需要执行命令:
dnf -y install elrepo-release
#or
yum -y install elrepo-release
以下为 rpm 包在线安装方法:
# Import the public key:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org# To install ELRepo for RHEL-**8** or CentOS-**8**:
yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm# To install ELRepo for RHEL-**7**, SL-**7** or CentOS-**7**:
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
# To make use of our mirror system, **please also install yum-plugin-fastestmirror**.
升级内核
升级内核步骤如下:
查询 ELRepo 中的 kernel 版本
# 列出可用的内核相关包: yum --disablerepo="*" --enablerepo="elrepo-kernel" list available yum --disablerepo="*" --enablerepo="elrepo-kernel" list available --showduplicates #查看所有版本
术语解释
- kernel-ml
kernel-ml 中的 ml 是英文 “mainline stable” 的缩写,elrepo-kernel 中列出来的是最新的稳定主线版本。 - kernel-lt
kernel-lt 中的 lt 是英文 “long term support” 的缩写,elrepo-kernel 中列出来的长期支持版本。
- kernel-ml
查询安装的 kernel 包
# 查询所有 kernel 包 rpm -qa|grep kernel # 示例输出如下: kernel-core-4.18.0-348.el8.x86_64 kernel-4.18.0-348.2.1.el8_5.x86_64 kernel-core-4.18.0-348.2.1.el8_5.x86_64 kernel-modules-4.18.0-348.2.1.el8_5.x86_64 kernel-devel-4.18.0-348.2.1.el8_5.x86_64 kernel-modules-4.18.0-348.el8.x86_64 kernel-tools-libs-4.18.0-348.2.1.el8_5.x86_64 kernel-headers-4.18.0-348.2.1.el8_5.x86_64 kernel-4.18.0-348.el8.x86_64 kernel-tools-4.18.0-348.2.1.el8_5.x86_64
安装 kernel
# 根据上述查询结果,安装内核相关包 # 安装新内核 yum --disablerepo=\* --enablerepo=elrepo-kernel install -y kernel-ml.x86_64 #kernel-core、kernel-modules 与 kernel 依赖自动更新 # 安装新内核相关软件 yum --disablerepo=\* --enablerepo=elrepo-kernel install -y kernel-ml-devel kernel-ml-tools kernel-ml-tools-libs kernel-ml-tools-libs-devel kernel-ml-headers --skip-broken
新内核将成为默认启动内核,可以根据需要调整默认启动项,如下文描述。
查看和设置默认启动项
grubby 是一个命令行工具,用于更新和显示有关 grub2 和 zipl 引导加载程序的配置文件的信息。它主要设计用于安装新内核并需要查找有关当前引导环境的信息的脚本。同时也可以对启动内核的各项信息参数进行修改。
在 CentOS 8 在已经自带该命令,如果没有通过
yum install grubby
来安装即可。查看当前的默认启动内核:
$ grubby --default-kernel /boot/vmlinuz-5.15.4-1.el8.elrepo.x86_64
查看系统安装的全部内核:
$ grubby --info=ALL index=0 kernel="/boot/vmlinuz-5.15.4-1.el8.elrepo.x86_64" args="ro crashkernel=auto net.ifnames=0 $tuned_params" root="UUID=56c34ece-6010-480e-aeac-dea98b8ffcd3" initrd="/boot/initramfs-5.15.4-1.el8.elrepo.x86_64.img $tuned_initrd" title="Rocky Linux (5.15.4-1.el8.elrepo.x86_64) 8.5 (Green Obsidian)" id="032ed95ba9c0471381bbb6b416eff523-5.15.4-1.el8.elrepo.x86_64" index=1 kernel="/boot/vmlinuz-4.18.0-348.2.1.el8_5.x86_64" args="ro crashkernel=auto net.ifnames=0 $tuned_params" root="UUID=56c34ece-6010-480e-aeac-dea98b8ffcd3" initrd="/boot/initramfs-4.18.0-348.2.1.el8_5.x86_64.img $tuned_initrd" title="Rocky Linux (4.18.0-348.2.1.el8_5.x86_64) 8.5 (Green Obsidian)" id="032ed95ba9c0471381bbb6b416eff523-4.18.0-348.2.1.el8_5.x86_64" index=2 kernel="/boot/vmlinuz-4.18.0-348.el8.x86_64" args="ro crashkernel=auto net.ifnames=0 $tuned_params intel_iommu=on" root="UUID=56c34ece-6010-480e-aeac-dea98b8ffcd3" initrd="/boot/initramfs-4.18.0-348.el8.x86_64.img $tuned_initrd" title="AlmaLinux (4.18.0-348.el8.x86_64) 8.5 (Arctic Sphynx)" id="032ed95ba9c0471381bbb6b416eff523-4.18.0-348.el8.x86_64" index=3 kernel="/boot/vmlinuz-0-rescue-032ed95ba9c0471381bbb6b416eff523" args="ro crashkernel=auto net.ifnames=0" root="UUID=56c34ece-6010-480e-aeac-dea98b8ffcd3" initrd="/boot/initramfs-0-rescue-032ed95ba9c0471381bbb6b416eff523.img" title="AlmaLinux (0-rescue-032ed95ba9c0471381bbb6b416eff523) 8.5 (Arctic Sphynx)" id="032ed95ba9c0471381bbb6b416eff523-0-rescue"
查看特定内核的具体信息:
$ grubby --info=/boot/vmlinuz-4.18.0-348.el8.x86_64 index=1 kernel="/boot/vmlinuz-4.18.0-348.el8.x86_64" args="ro crashkernel=auto net.ifnames=0 $tuned_params" root="UUID=56c34ece-6010-480e-aeac-dea98b8ffcd3" initrd="/boot/initramfs-4.18.0-348.el8.x86_64.img $tuned_initrd" title="AlmaLinux (4.18.0-348.el8.x86_64) 8.5 (Arctic Sphynx)" id="032ed95ba9c0471381bbb6b416eff523-4.18.0-348.el8.x86_64"
设置新的默认启动内核:
- 使用路径来指定内核,可以使用 --set-default=kernel-path
$ grubby --set-default=/boot/vmlinuz-4.18.0-348.el8.x86_64 The default is /boot/loader/entries/032ed95ba9c0471381bbb6b416eff523-4.18.0-348.el8.x86_64.conf with index 1 and kernel /boot/vmlinuz-4.18.0-348.el8.x86_64$ grubby --default-kernel /boot/vmlinuz-4.18.0-348.el8.x86_64
- 使用 index 来指定内核,则使用 --set-default-index=entry-index
$ grubby --set-default-index=1 The default is /boot/loader/entries/032ed95ba9c0471381bbb6b416eff523-4.18.0-348.el8.x86_64.conf with index 1 and kernel /boot/vmlinuz-4.18.0-348.el8.x86_64$ grubby --default-kernel /boot/vmlinuz-4.18.0-348.el8.x86_64
重启后生效
reboot #重启
删除旧内核(可选)
从启动项中删除旧内核
grubby --remove-kernel=/boot/vmlinuz-4.18.0-348.el8.x86_64
删除旧内核文件
# 删除旧内核 yum remove kernel-4.18.0 kernel-core-4.18.0 kernel-modules-4.18.0 kernel-devel-4.18.0 kernel-tools-4.18.0 kernel-tools-libs-4.18.0 kernel-headers-4.18.0 # 注意,会同时删除一些依赖包(如 gcc、systemtap 等),需要重新补安装回来。# 再查看系统已安装的内核,确认旧内核版本已经删除: rpm -qa | grep kernel
AlmaLinux、CentOS、Rocky Linux 8 如何更新到 Linux 内核 5.15相关推荐
- oracle linux 5.8 更新,Oracle Linux迎来UEK R5U5企业内核更新
原标题:Oracle Linux迎来UEK R5U5企业内核更新 甲骨文在一篇官方博客文章中,宣布了面向企业级 Linux 内核(Unbreakable Enterprise Kernel)Relea ...
- linux磁盘挂载更新名称,Linux磁盘管理
1.基本分区方式: (1)MBR分区:MBR的意思是"主引导记录",它是存在于驱动器开始部分的一个特殊的启动扇区.这个扇区包含了已安装的操作系统的启动加载器和驱动器的逻辑分区信息. ...
- linux svn怎么更新文件,linux安装SVN以及同步更新到项目上
1.安装svn服务端:yum install subversion 2.进入目录,准备创建svn目录:cd /usr/local/ 3.创建一个svn目录:mkdir svnRepo 4.修改目录权限 ...
- linux各版本的发布时间,linux服务器-红帽企业Linux各个版本发布时间和内核版本...
Red Hat Enterprise Linux 7 发布/更新 GA版本 发布堪误时间 内核版本 RHEL 7 Update 2 TBA TBA TBA RHEL 7 Update 1 2015-0 ...
- CentOS 如何在线乔迁 AlmaLinux 或 Rocky Linux ,且避免数据中心停机
CentOS 8 在线升级 AlmaLinux 众所周知,步入到2021年红帽已不在维护CentOS了,转而取代的是伪滚动发行版 CentOS Stream,但少有Centos的运维人员对其青 ...
- 如何在CentOS 5.x 中安装Windows Azure Linux Agent (WALA)
Qing Liu Tue, Mar 10 2015 3:06 AM 在今天的这一个章节中,我们主要讨论在CentOs 5.x 中如何安装Windows Azure Linux Agent 2.11 ...
- 红帽linux怎么更新源,redhat Linux配置yum更新源
redhat Linux配置yum更新源 (2011-11-19 20:23:04) 标签: 杂谈 YUM是RedHat Linux在线安装更新及软件的工具,但是这是RHEL5的收费功能,如果没有购买 ...
- CentOS、Ubuntu、Debian三个linux比较异同
Linux有非常多的发行版本,从性质上划分,大体分为由商业公司维护的商业版本与由开源社区维护的免费发行版本. 商业版本以Redhat为代表,开源社区版本则以debian为代表.这些版本各有不同的特点, ...
- CentOS yum安装mcrypt详细图解教程[linux]
在Linux的发行版CentOS 6.3 系统下,LAMP(Linux+Apache+Mysql+php)环境搭建好后发现PHPMyadmin提示 "无法载入mcrypt模块" 的 ...
最新文章
- 负载均衡集群ipvsadm命令及基本用法
- python3.6运行界面_Electron+Python界面开发(通过zerorpc)
- 【tensorflow】tf-argmax()
- [WebKit] JavaScriptCore解析
- gulp编译css_如何用gulp缩小CSS
- ES6——class和继承,保护对象
- python单行注释的标记符_【转】Pyhton 单行、多行注释符号使用方法及规范
- 20135115臧文君---实验2
- 雷军藏太深!除小米、迅雷外,还有这么多耳熟能详的企业?
- 私人影院音响效果如何有效提升?
- javascript中typeof、undefined 和 null
- Python的网络编程[5] - BOOTP + TFTP + FTP - 实现一个简单的文件传输流程
- html界面嵌入网易云,使用flex进行网易云音乐界面构建和布局解析(1)
- Step3:获得单应矩阵(每张图片需要m个棋盘格角点,m≥4)
- 传输层协议《TCP/IP详解 卷1:协议》学习笔记
- 集成电路将成一级学科,这些高校迎来重大机遇!
- PrimeNG之FileUpload
- WIN11自带微软输入法设置问题 自带键盘版本仍为win10问题、显示繁体问题解决
- mac上好用的文档转换器Doxillion Plus
- 机器学习之随机森林(手推公式版)
热门文章
- 零基础入门深度学习(二):用一个案例掌握深度学习方法
- osc mysql_MySQL在线修改表结构pt-osc
- lol新加坡服务器中英文文件,《lol手游》新加坡服有中文吗 新加坡服语言机制介绍...
- 回答一些朋友的收掠问题(二)(转自:老公婆)
- 路由的props参数
- 免费图片在线压缩网站推荐
- VC++ 6.0多窗口打开多个.dsw工程文件时
- 永恒python强化材料怎么获得_只狼强化材料怎么得 全强化材料获取方法
- win7_64+tensorflow1.4+cuda8.0+cudnn6.0+GTX1050安装
- 5_2_Chess(二)画线