【Linux】Centos7升级内核的方法:yum更新(ELRepo)

2024-06-08 00:12

本文主要是介绍【Linux】Centos7升级内核的方法:yum更新(ELRepo),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

😎 作者介绍:我是程序员洲洲,一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主。
🤓 同时欢迎大家关注其他专栏,我将分享Web前后端开发、人工智能、机器学习、深度学习从0到1系列文章。
🌼 同时洲洲已经建立了程序员技术交流群,如果您感兴趣,可以私信我加入社群,可以直接vx联系(文末有名片)v:bdizztt
🖥 随时欢迎您跟我沟通,一起交流,一起成长、进步!点此也可获得联系方式~

本文目录

  • 前言
  • 一、Linxu内核
    • 1.1 内核解析
    • 1.2 内核的分类
    • 1.3 内核的选择
    • 1.4 内核的升级
    • 1.5 注意事项
  • 二、ELRepo升级内核
  • 总结

前言

Linux操作系统的多样性很大程度上归功于其内核的灵活性和可定制性。内核作为操作系统的核心,不仅决定了系统的性能和稳定性,也影响着系统的安全性和功能性。

Linux内核是操作系统的核心,负责管理系统资源、控制程序执行、处理硬件设备等。不同版本的内核对应着不同的功能和性能表现,这也是Linux发行版多样化的原因之一。

一、Linxu内核

1.1 内核解析

在Linux系统中,我们可以通过uname -r命令查看当前使用的内核版本。例如,3.10.0-1127.19.1.el7.x86_64这个版本号中,3是主版本号,10是次版本号,表明这是一个稳定的版本,0是修订版本号,而1127.19.1则是发行版的补丁版本号。el7表示这是为RedHat/CentOS系列发行版专用的内核,x86_64指明它适用于64位CPU的操作系统。

1.2 内核的分类

Linux内核可以分为官方内核和各大Linux发行版内核。内核版本号的分类如下:

Prepatch/RC:主要面向内核开发人员和Linux爱好者,包含新功能,需要从源代码编译。
Mainline:由Linus Torvalds维护,每2-3个月发布一次,引入所有新功能。
Stable:主线内核发布后即被认为是稳定的,按需发布BUG修复版本。
Longterm:长期维护版本,用于修复旧版内核的重大BUG,发布频率较低。

1.3 内核的选择

在众多内核版本中,选择一个稳定且经过充分测试的版本至关重要。Longterm内核因其稳定性和较低的BUG修复频率而成为理想的选择。例如,5.4.69版本的内核就是一个长期维护的稳定版本。

选择Longterm内核的理由包括:
稳定性:Longterm内核经过长时间的测试和使用,大部分BUG已被修复。
功能性:新功能的引入使得Longterm内核能够提供更多的系统功能。
向下兼容性:内核的向下兼容性保证了在升级过程中系统的兼容性和稳定性。

1.4 内核的升级

Linux系统通常支持多版本内核共存,因此在升级内核时,我们可以选择保留旧版本内核,仅安装新版本内核,并在系统启动时通过GRUB选择使用新版本内核。

升级策略
1.备份当前系统:在进行内核升级前,备份当前系统状态,以防万一。
2.下载新内核:从可信的源下载新内核的源码包或二进制包。
3.安装新内核:根据系统和内核类型,编译并安装新内核。
4.更新GRUB配置:确保GRUB配置文件中包含了新内核的启动项。
5.重启并选择新内核:重启系统,在GRUB菜单中选择新内核启动。

1.5 注意事项

不要删除旧内核:保留旧内核可以在新内核出现问题时快速回退。

测试新内核:在生产环境部署新内核前,应在测试环境中充分测试其稳定性和兼容性。

二、ELRepo升级内核

ELRepo是一个为Red Hat Enterprise Linux及其衍生版(如CentOS)提供最新内核的第三方仓库。使用ELRepo可以轻松升级到最新的主线(Mainline)或长期支持(Long Term Support, LTS)内核。

步骤1:检查已安装的内核版本

在开始升级之前,首先要确认当前系统中已安装的内核版本。可以通过执行以下命令来查看:

uname -rs

例如,输出结果可能是Linux 3.10.0-1127.19.1.el7.x86_64。

步骤2:启用ELRepo仓库

接下来,需要启用ELRepo仓库以获取新的内核包。按照以下步骤操作:

导入ELRepo的GPG密钥:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

安装ELRepo仓库包:

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

查看可用的内核版本:

yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

步骤3:安装新内核

根据输出的内核版本列表,选择一个合适的版本进行安装。可以选择安装主线版本(较新但可能不稳定)或长期稳定版本(经过充分测试的稳定版本)。

安装主线版本(以5.8.13为例):

yum --enablerepo=elrepo-kernel install kernel-ml -y

安装长期稳定版本(以4.4.238为例):

yum --enablerepo=elrepo-kernel install kernel-lt -y

安装完成后,重启计算机,并在GRUB启动菜单中手动选择新安装的内核版本。

步骤4:设置GRUB默认内核版本
为了让新安装的内核成为默认启动项,需要修改GRUB配置文件:

打开并编辑 /etc/default/grub 文件,设置 GRUB_DEFAULT=0:

nano /etc/default/grub

修改配置如下:

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

保存并关闭文件后,更新GRUB配置:

grub2-mkconfig -o /boot/grub2/grub.cfg

重启计算机,新内核将作为默认内核启动。

总结

📝Hello,各位看官老爷们好,我已经建立了CSDN技术交流群,如果你很感兴趣,可以私信我加入我的社群。

📝社群中不定时会有很多活动,例如每周都会包邮免费送一些技术书籍及精美礼品、学习资料分享、大厂面经分享、技术讨论谈等等。

📝社群方向很多,相关领域有Web全栈(前后端)、人工智能、机器学习、自媒体副业交流、前沿科技文章分享、论文精读等等。

📝不管你是多新手的小白,都欢迎你加入社群中讨论、聊天、分享,加速助力你成为下一个大佬!

📝想都是问题,做都是答案!行动起来吧!欢迎评论区or后台与我沟通交流,也欢迎您点击下方的链接直接加入到我的交流社群!~ 跳转链接社区~

在这里插入图片描述

这篇关于【Linux】Centos7升级内核的方法:yum更新(ELRepo)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1040700

相关文章

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

poj3468(线段树成段更新模板题)

题意:包括两个操作:1、将[a.b]上的数字加上v;2、查询区间[a,b]上的和 下面的介绍是下解题思路: 首先介绍  lazy-tag思想:用一个变量记录每一个线段树节点的变化值,当这部分线段的一致性被破坏我们就将这个变化值传递给子区间,大大增加了线段树的效率。 比如现在需要对[a,b]区间值进行加c操作,那么就从根节点[1,n]开始调用update函数进行操作,如果刚好执行到一个子节点,

hdu1394(线段树点更新的应用)

题意:求一个序列经过一定的操作得到的序列的最小逆序数 这题会用到逆序数的一个性质,在0到n-1这些数字组成的乱序排列,将第一个数字A移到最后一位,得到的逆序数为res-a+(n-a-1) 知道上面的知识点后,可以用暴力来解 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#in

hdu1689(线段树成段更新)

两种操作:1、set区间[a,b]上数字为v;2、查询[ 1 , n ]上的sum 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#include<queue>#include<set>#include<map>#include<stdio.h>#include<stdl

Centos7安装JDK1.8保姆版

工欲善其事,必先利其器。这句话同样适用于学习Java编程。在开始Java的学习旅程之前,我们必须首先配置好适合的开发环境。 通过事先准备好这些工具和配置,我们可以避免在学习过程中遇到因环境问题导致的代码异常或错误。一个稳定、高效的开发环境能够让我们更加专注于代码的学习和编写,提升学习效率,减少不必要的困扰和挫折感。因此,在学习Java之初,投入一些时间和精力来配置好开发环境是非常值得的。这将为我

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor