Centos7 内核升级(5.4.225)
创始人
2024-03-17 10:18:52
0次

文章目录

    • 一、背景
    • 二、在线 yum 安装
      • 1)查看当前内核版本信息
      • 2)导入仓库源
      • 3)选择 ML 或 LT 版本安装
      • 4)设置启动
      • 5)生成 grub 配置文件
      • 6)重启
      • 7)验证是否升级成功
      • 8)删除旧内核(可选)
    • 三、离线rpm安装
      • 1)下载内核 RPM
      • 2)安装内核
      • 3)确认已安装内核版本
      • 4)设置启动
      • 5)生成 grub 配置文件
      • 6)重启
      • 7)验证是否升级成功
      • 8)删除旧内核(可选)

一、背景

在 CentOS 使用过程中,高版本的应用环境可能需要更高版本的内核才能支持,所以难免需要升级内核,所以以下将介绍yum和rpm两种升级内核方式。

关于内核种类:

  • kernel-ml——kernel-ml 中的ml是英文【 mainline stable 】的缩写,elrepo-kernel中罗列出来的是最新的稳定主线版本。

  • kernel-lt——kernel-lt 中的lt是英文【 long term support 】的缩写,elrepo-kernel中罗列出来的长期支持版本。ML 与 LT 两种内核类型版本可以共存,但每种类型内核只能存在一个版本。

二、在线 yum 安装

1)查看当前内核版本信息

uname -a
# 仅查看版本信息
uname -r
#  通过绝对路径查看查看版本信息及相关内容
cat /proc/version
#  通过绝对路径查看查看版本信息
cat /etc/redhat-release

在这里插入图片描述

2)导入仓库源

# 1、更新yum源仓库
yum -y update
# 2、导入ELRepo仓库的公共密钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# 3、安装ELRepo仓库的yum源
yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
# 4、查询可用内核版本
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

在这里插入图片描述

3)选择 ML 或 LT 版本安装

# 安装 最新版ML 版本
# yum --enablerepo=elrepo-kernel install  kernel-ml-devel kernel-ml -y
# 安装 最新版LT 版本
# yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt -y# 不带版本号就安装最新版本,这里我们安装 LT 5.4.225-1.el7.elrepo版本
# 安装 LT 版本,K8S全部选这个
yum --enablerepo=elrepo-kernel install kernel-lt-devel-5.4.225-1.el7.elrepo.x86_64 kernel-lt-5.4.225-1.el7.elrepo.x86_64 -y

安装完成后需要设置 grub2,即内核默认启动项

4)设置启动

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

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

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

在这里插入图片描述
刚刚安装的内核即0 : CentOS Linux (5.4.225-1.el7.elrepo.x86_64) 7 (Core)
我们需要把grub2默认设置为0
可以通过 grub2-set-default 0 命令或编辑 /etc/default/grub 文件来设置

方法1:通过 grub2-set-default 0 命令设置

grub2-set-default 0

方法2:编辑 /etc/default/grub 文件

# 将GRUB_DEFAULT设置为0,如下
vim /etc/default/grub

在这里插入图片描述

5)生成 grub 配置文件

GRUB2 的配置文件通常为 /boot/grub2/grub.cfg,虽然此文件很灵活,但是我们并不需要手写所有内容。可以通过程序自动生成,或是直接修改生成之后的文件。通常情况下简单配置文件 /etc/default/grub ,然后用程序 grub-mkconfig 来产生文件 grub.cfg。

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

6)重启

# 重启(默认30秒)
reboot
# 立即重启
reboot -h now

7)验证是否升级成功

uname -a
# 仅查看版本信息
uname -r
#  通过绝对路径查看查看版本信息及相关内容
cat /proc/version
#  通过绝对路径查看查看版本信息
cat /etc/redhat-release

在这里插入图片描述

8)删除旧内核(可选)

查看系统中的全部内核

rpm -qa | grep kernel
# yum remove kernel-版本
yum remove kernel-3.10.0-1160.el7.x86_64 kernel-3.10.0-1160.71.1.el7.x86_64 kernel-tools-3.10.0-1160.71.1.el7.x86_64 kernel-tools-libs-3.10.0-1160.71.1.el7.x86_64

在这里插入图片描述

三、离线rpm安装

查找 kernel rpm 历史版本:http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/

1)下载内核 RPM

wget http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-devel-5.4.225-1.el7.elrepo.x86_64.rpm
wget http://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/kernel-lt-5.4.225-1.el7.elrepo.x86_64.rpm

2)安装内核

rpm -ivh kernel-lt-5.4.225-1.el7.elrepo.x86_64.rpm
rpm -ivh kernel-lt-devel-5.4.225-1.el7.elrepo.x86_64.rpm

3)确认已安装内核版本

rpm -qa | grep kernel

在这里插入图片描述

4)设置启动

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

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

在这里插入图片描述

grub2-set-default 0

5)生成 grub 配置文件

GRUB2 的配置文件通常为 /boot/grub2/grub.cfg,虽然此文件很灵活,但是我们并不需要手写所有内容。可以通过程序自动生成,或是直接修改生成之后的文件。通常情况下简单配置文件 /etc/default/grub ,然后用程序 grub-mkconfig 来产生文件 grub.cfg。

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

6)重启

# 重启(默认30秒)
reboot
# 立即重启
reboot -h now

7)验证是否升级成功

uname -a
# 仅查看版本信息
uname -r
#  通过绝对路径查看查看版本信息及相关内容
cat /proc/version
#  通过绝对路径查看查看版本信息
cat /etc/redhat-release

在这里插入图片描述

8)删除旧内核(可选)

查看系统中的全部内核

rpm -qa | grep kernel
# yum remove kernel-版本
yum remove kernel-3.10.0-1160.el7.x86_64 kernel-3.10.0-1160.71.1.el7.x86_64 kernel-tools-3.10.0-1160.71.1.el7.x86_64 kernel-tools-libs-3.10.0-1160.71.1.el7.x86_64

在这里插入图片描述
Centos7 内核升级(5.4.225)升级就到这里了,有疑问的小伙伴欢迎给我留言,后续更新【云原生+大数据】相关的文章,请小伙伴耐心等待~

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...