CentOS Linux升级内核kernel方法

目录

一、背景

二、准备工作

三、升级内核

四、还原内核


一、背景

    某些情况需要对Linux发行版自带的内核kernel可能版本较低,需要对内核kernel进行升级。例如:CentOS 7.x 版本的系统默认内核是3.10.0,如果需要再操作系统上安装Kubernetes,通常,建议在安装Kubernetes前建议先对内核进行升级至4.x或者更高

    下文,以CentOS 7.9 64bit为例,展示升级内核kernel的过程。

二、准备工作

    1、升级前,以root用户,检查当前内核版本:

uname -r

 查询得到的版本号为:3.10.0-1160.el7.x86_64

  • 第一组:3  主版本号

  • 第二组:10  次版本号,当前为稳定版本,一般这个数字为偶数表示稳定,奇数表示在开发版本,通常开发版本不做生产使用

  • 第三组:0  修订版本号

  • 第四组:1160  表示发型版本的补丁版本

  • 第五组:el7  该el7是Red Hat Enterprise Linux 7‌ 的缩写,表示与 Red Hat Enterprise Linux 7 系列兼容的发行版或软件包

  • 第六组:x86_64  对应的CPU硬件架构。

   

   2、升级前,以root用户,查看内核列表及顺序、查看启动是默认内核:

awk -F \' '$1=="menuentry " {print $2}' /etc/grub2.cfg

grub2-editenv list

 3、浏览以下网页,从中选择即将升级的新版内核(如果是Ubuntu等其他发行版则可从其他地方寻找内核)

https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/

    其中kernel-ml中的ml是英文【mainline stable】稳定主线版本;kernel-lt 中的lt是英文【long term support】的缩写,长期支持版本。

三、升级内核

   1、以root用户,选择新版内核,并通过rpm方式安装新内核:

rpm -ivh https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-5.4.278-1.el7.elrepo.x86_64.rpm

    2、 安装后,以root用户,查看内核列表:

awk -F \' '$1=="menuentry " {print $2}' /etc/grub2.cfg

  列表中可以看到刚刚安装的新内核:

    3、 升级后,以root用户,设置Linux启动时默认选择新内核:

grub2-set-default "CentOS Linux (5.4.278-1.el7.elrepo.x86_64) 7 (Core)"

grub2-editenv list

  可以看到,Linux启动默认内核已经设置为新内核

   4、 重启Linux,以root用户执行reboot重启

reboot

   5、 重启Linux时,可看到在启动界面多了一个内核选择,且默认选了新内核

    6、 重启后,以root用户,检查升级后的内核版本:

   至此,内核升级完成。 

四、还原内核

    若需回退选择为原内核版本,可通过命令“grub2-set-default”设置对应的内核版本名,然后重启即可。

### 如何在CentOS升级内核 #### 准备工作 为了确保顺利进行内核升级,在开始之前应备份重要数据并确认当前系统的状态。对于基于Red Hat的企业级Linux发行版,如CentOS,官方仓库通常提供稳定版本的软件包。 #### 使用ELRepo库安装最新内核 由于默认源中的内核可能不是最新的,可以考虑通过第三方资源获取更新版本。ELRepo是一个社区维护的存储库,专门针对RHEL及其衍生产品提供了额外的支持和驱动程序支持[^1]。 - 添加ELRepo GPG key: ```bash rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org ``` - 安装ELRepo yum repository配置文件: ```bash yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm ``` #### 更新现有系统组件 确保所有已安装的应用程序都处于其最新可用版本可以帮助减少潜在冲突的风险。 ```bash yum update -y ``` #### 查看可选内核列表 利用`yum list available | grep kernel`命令来查看可以从ELRepo获得哪些特定于硬件优化过的内核选项。 #### 执行实际的内核安装过程 一旦决定了要使用的具体内核名称,则可以通过如下方式执行安装操作: ```bash yum --enablerepo=elrepo-kernel install kernel-lt ``` 这里选择了长期支持(LTS)分支作为例子;也可以替换为其他变体比如`.ml`(主线). #### 设置GRUB引导加载器指向新内核 完成上述步骤之后,重启计算机前还需要调整启动管理器设置以便能够正确识别到刚加入的新镜像位置。对于大多数现代GNU/Linux发行版而言,默认情况下会自动处理此更改。但是建议手动验证以确保无误。 编辑/etc/default/grub 文件修改 GRUB_DEFAULT 参数使其等于0表示总是选择最高优先级条目即最近一次编译成功的那个版本. 最后运行 `grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg` 或者根据实际情况指定路径重新生成配置文件[^2]. #### 验证新的内核是否被采用 机器再次开机后可通过uname -r指令查询正在运行的操作系统核心编号从而判断整个流程是否成功结束。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值