Linux CentOS7.x 升级内核的方法

简介: Linux CentOS7.x 升级内核的方法

文章目录

1. 查看操作系统内核版本

2. 安装ELRepo

3. 查看内核版本列表

4. 安装

5. 查看系统上面可以使用的内核

6. 修改启动顺序默认值

7. 生产grub 配置文件

8. 重新启动

9. 删除旧内核版本

9.1 方法一:使用yum remove 删除旧版本RPM包

9.2 方法二: yum-utils 工具

1. 查看操作系统内核版本

$  uname -r
3.10.0-1062.4.1.el7.x86_64

2. 安装ELRepo

官网地址:http://elrepo.org/tiki/tiki-index.php

$ rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
$ yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm

3. 查看内核版本列表

$ yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
Loading mirror speeds from cached hostfile
 * elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
elrepo-kernel                                                                                                                                                                                                                        | 3.0 kB  00:00:00     
elrepo-kernel/primary_db                                                                                                                                                                                                             | 2.0 MB  00:00:04     
可安装的软件包
kernel-lt.x86_64                                                                                                              5.4.162-1.el7.elrepo                                                                                             elrepo-kernel
kernel-lt-devel.x86_64                                                                                                        5.4.162-1.el7.elrepo                                                                                             elrepo-kernel
kernel-lt-doc.noarch                                                                                                          5.4.162-1.el7.elrepo                                                                                             elrepo-kernel
kernel-lt-headers.x86_64                                                                                                      5.4.162-1.el7.elrepo                                                                                             elrepo-kernel
kernel-lt-tools.x86_64                                                                                                        5.4.162-1.el7.elrepo                                                                                             elrepo-kernel
kernel-lt-tools-libs.x86_64                                                                                                   5.4.162-1.el7.elrepo                                                                                             elrepo-kernel
kernel-lt-tools-libs-devel.x86_64                                                                                             5.4.162-1.el7.elrepo                                                                                             elrepo-kernel
kernel-ml.x86_64                                                                                                              5.15.5-1.el7.elrepo                                                                                              elrepo-kernel
kernel-ml-devel.x86_64                                                                                                        5.15.5-1.el7.elrepo                                                                                              elrepo-kernel
kernel-ml-doc.noarch                                                                                                          5.15.5-1.el7.elrepo                                                                                              elrepo-kernel
kernel-ml-headers.x86_64                                                                                                      5.15.5-1.el7.elrepo                                                                                              elrepo-kernel
kernel-ml-tools.x86_64                                                                                                        5.15.5-1.el7.elrepo                                                                                              elrepo-kernel
kernel-ml-tools-libs.x86_64                                                                                                   5.15.5-1.el7.elrepo                                                                                              elrepo-kernel
kernel-ml-tools-libs-devel.x86_64                                                                                             5.15.5-1.el7.elrepo                                                                                              elrepo-kernel
perf.x86_64                                                                                                                   5.15.5-1.el7.elrepo                                                                                              elrepo-kernel
python-perf.x86_64                                                                                                            5.15.5-1.el7.elrepo                                                                                              elrepo-kernel

4. 安装

$ yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
已加载插件:fastestmirror, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * elrepo: mirrors.neusoft.edu.cn
 * elrepo-kernel: mirrors.neusoft.edu.cn
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
https://wiki.centos.org/yum-errors
If above article doesn't help to resolve this issue please use https://bugs.centos.org/.
elrepo                                                                                                                                                                                                                               | 3.0 kB  00:00:00     
elrepo/primary_db                                                                                                                                                                                                                    | 501 kB  00:00:00     
正在解决依赖关系
--> 正在检查事务
---> 软件包 kernel-ml.x86_64.0.5.15.5-1.el7.elrepo 将被 安装
---> 软件包 kernel-ml-devel.x86_64.0.5.15.5-1.el7.elrepo 将被 安装
--> 解决依赖关系完成
依赖关系解决
============================================================================================================================================================================================================================================================
 Package                                                        架构                                                  版本                                                               源                                                            大小
============================================================================================================================================================================================================================================================
正在安装:
 kernel-ml                                                      x86_64                                                5.15.5-1.el7.elrepo                                                elrepo-kernel                                                 55 M
 kernel-ml-devel                                                x86_64                                                5.15.5-1.el7.elrepo                                                elrepo-kernel                                                 14 M
事务概要
============================================================================================================================================================================================================================================================
安装  2 软件包
总下载量:69 M
安装大小:306 M
Downloading packages:
(1/2): kernel-ml-5.15.5-1.el7.elrepo.x86_64.rpm                                                                                                                                                                                      |  55 MB  00:00:08     
(2/2): kernel-ml-devel-5.15.5-1.el7.elrepo.x86_64.rpm                                                                                                                                                                                |  14 MB  00:03:32     
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
总计                                                                                                                                                                                                                        330 kB/s |  69 MB  00:03:33     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : kernel-ml-devel-5.15.5-1.el7.elrepo.x86_64                                                                                                                                                                                              1/2 
  正在安装    : kernel-ml-5.15.5-1.el7.elrepo.x86_64                                                                                                                                                                                                    2/2 
  验证中      : kernel-ml-5.15.5-1.el7.elrepo.x86_64                                                                                                                                                                                                    1/2 
  验证中      : kernel-ml-devel-5.15.5-1.el7.elrepo.x86_64                                                                                                                                                                                              2/2 
已安装:
  kernel-ml.x86_64 0:5.15.5-1.el7.elrepo                                                                                    kernel-ml-devel.x86_64 0:5.15.5-1.el7.elrepo                                                                                   
完毕!

5. 查看系统上面可以使用的内核

$ awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.15.5-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.45.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-957.1.3.el7.x86_64) 7 (Core)
3 : CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)
4 : CentOS Linux (0-rescue-8c140402428842fe94fb7aa44b8df5d0) 7 (Core)

6. 修改启动顺序默认值

方法1:命令操作

$ grub2-set-default 0

方法2:修改/etc/default/grub 文件

设置 GRUB_DEFAULT=0,通过上面查询显示的编号为 0 的内核作为默认内核:

$ vim /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="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"

7. 生产grub 配置文件

$ grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.15.5-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-5.15.5-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-1160.45.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1160.45.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-957.1.3.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.1.3.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-693.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-693.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-8c140402428842fe94fb7aa44b8df5d0
Found initrd image: /boot/initramfs-0-rescue-8c140402428842fe94fb7aa44b8df5d0.img
done

8. 重新启动

$ reboot
$ uname -r
5.15.5-1.el7.elrepo.x86_64

9. 删除旧内核版本

$ rpm -qa | grep kernel
abrt-addon-kerneloops-2.1.11-55.el7.centos.x86_64
kernel-3.10.0-1062.4.1.el7.x86_64
kernel-ml-5.6.7-1.el7.elrepo.x86_64
kernel-debug-devel-3.10.0-1062.4.1.el7.x86_64
kernel-3.10.0-862.el7.x86_64
kernel-tools-libs-3.10.0-1062.4.1.el7.x86_64
kernel-tools-3.10.0-1062.4.1.el7.x86_64
kernel-headers-3.10.0-1062.4.1.el7.x86_64
kernel-ml-devel-5.6.7-1.el7.elrepo.x86_64

9.1 方法一:使用yum remove 删除旧版本RPM包

$ yum remove kernel-3.10.0-1062.4.1.el7.x86_64 kernel-3.10.0-862.el7.x86_64 kernel-tools-3.10.0-1062

9.2 方法二: yum-utils 工具

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

$ yum install yum-utils 
$ package-cleanup --oldkernels
相关文章
|
11月前
|
安全 网络协议 Linux
深入理解Linux内核模块:加载机制、参数传递与实战开发
本文深入解析了Linux内核模块的加载机制、参数传递方式及实战开发技巧。内容涵盖模块基础概念、加载与卸载流程、生命周期管理、参数配置方法,并通过“Hello World”模块和字符设备驱动实例,带领读者逐步掌握模块开发技能。同时,介绍了调试手段、常见问题排查、开发规范及高级特性,如内核线程、模块间通信与性能优化策略。适合希望深入理解Linux内核机制、提升系统编程能力的技术人员阅读与实践。
959 1
|
11月前
|
Ubuntu Linux
Ubuntu 23.04 用上 Linux 6.2 内核,预计下放到 22.04 LTS 版本
Linux 6.2 带来了多项内容更新,修复了 AMD 锐龙处理器设备在启用 fTPM 后的运行卡顿问题,还增强了文件系统。
|
11月前
|
Ubuntu Linux
Ubuntu 23.10 现在由Linux内核6.3提供支持
如果你想在你的个人电脑上测试一下Ubuntu 23.10的最新开发快照,你可以从官方下载服务器下载最新的每日构建ISO。然而,请记住,这是一个预发布版本,所以不要在生产机器上使用或安装它。
|
11月前
|
传感器 监控 Ubuntu
10 月发布,Ubuntu 23.10 已升级到 Linux Kernel 6.3 内核
硬件方面,Linux 6.3 引入了在 HID 中引入了原生的 Steam Deck 控制器接口,允许罗技 G923 Xbox 版赛车方向盘在 Linux 上运行;改善 8BitDo Pro 2 有线控制器的行为;并为一系列华硕 Ryzen 主板添加传感器监控。
|
11月前
|
Ubuntu Linux
Ubuntu24.04LTS默认采用Linux 6.8内核,实验性版本可通过PPA获得
IT之家提醒,当下的 Ubuntu 23.10 也是一个“短期支持版本”,该版本将在今年 7 月终止支持,而今年 4 月推出的 Ubuntu 24.04 LTS 长期支持版本将获得 5 年的更新支持。
|
11月前
|
Ubuntu 物联网 Linux
从零安装一个Linux操作系统几种方法,以Ubuntu18.04为例
一切就绪后,我们就可以安装操作系统了。当系统通过优盘引导起来之后,我们就可以看到跟虚拟机中一样的安装向导了。之后,大家按照虚拟机中的顺序安装即可。 好了,今天主要介绍了Ubuntu Server版操作系统的安装过程,关于如何使用该操作系统,及操作系统更深层的原理,还请关注本号及相关圈子。
|
11月前
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
2569 10
|
11月前
|
监控 Ubuntu Linux
什么Linux,Linux内核及Linux操作系统
上面只是简单的介绍了一下Linux操作系统的几个核心组件,其实Linux的整体架构要复杂的多。单纯从Linux内核的角度,它要管理CPU、内存、网卡、硬盘和输入输出等设备,因此内核本身分为进程调度,内存管理,虚拟文件系统,网络接口等4个核心子系统。
1071 0
|
11月前
|
Web App开发 缓存 Rust