在腾讯云中部署了一些服务器,操作系统使用的是CentOS 7.6,但是其默认内核版本较低,现使用ELRepo对CentOS的内核进行升级。

操作环境

服务器:腾讯云轻量应用服务器
操作系统:CentOS 7.6
当前内核版本:3.10.0-1160.45.1
目标内核版本:5.4.233-1

首先查看当前系统的内核版本

uname -rs

可以看到内核版本为3.10.0-1160.45.1

Linux 3.10.0-1160.45.1.el7.x86_64

当前的内核版本实在是太古老了,这里我们使用ELRepo进行内核升级,速度快,操作简单

以下是ELRepo官网地址: https://elrepo.org/

现在让我们开始升级内核吧

首先导入ELRepo仓库的公钥信息

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

导入成功后开始安装ELRepo

以下是RHEL-7, SL-7 or CentOS-7系统的安装指令

yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm

如果你是RHEL-8或者RHEL-9可以参考以下命令

# RHEL-8
yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm # RHEL-9
yum install https://www.elrepo.org/elrepo-release-9.el9.elrepo.noarch.rpm

安装完成后,我们查看当前可用的内核发行版本

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

其中主要有两个版本,kernel-lt代表long term support版本,kernel-ml表示mainline stable版本,为了保证系统的安全和稳定性,我们这里使用kernel-lt作为升级版本

Loaded plugins: fastestmirror, langpacks
Repository epel is listed more than once in the configuration
Loading mirror speeds from cached hostfile
* elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
Available Packages
kernel-lt-devel.x86_64 5.4.233-1.el7.elrepo elrepo-kernel
kernel-lt-doc.noarch 5.4.233-1.el7.elrepo elrepo-kernel
kernel-lt-headers.x86_64 5.4.233-1.el7.elrepo elrepo-kernel
kernel-lt-tools.x86_64 5.4.233-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs.x86_64 5.4.233-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs-devel.x86_64 5.4.233-1.el7.elrepo elrepo-kernel
kernel-ml.x86_64 6.2.1-1.el7.elrepo elrepo-kernel
kernel-ml-devel.x86_64 6.2.1-1.el7.elrepo elrepo-kernel
kernel-ml-doc.noarch 6.2.1-1.el7.elrepo elrepo-kernel
kernel-ml-headers.x86_64 6.2.1-1.el7.elrepo elrepo-kernel
kernel-ml-tools.x86_64 6.2.1-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs.x86_64 6.2.1-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs-devel.x86_64 6.2.1-1.el7.elrepo elrepo-kernel
perf.x86_64 5.4.233-1.el7.elrepo elrepo-kernel

开始安装长期支持版本kernel-lt

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

安装完毕后,查看一下系统中已完成的kernel信息

grubby --info=ALL | grep ^kernel

可以看到kernel-lt的最新版本5.4.233-1已经安装成功了

kernel=/boot/vmlinuz-0-rescue-3d0df1c5536b40eba1b845d007ce1f87
kernel=/boot/vmlinuz-5.4.233-1.el7.elrepo.x86_64
kernel=/boot/vmlinuz-3.10.0-1160.45.1.el7.x86_64
kernel=/boot/vmlinuz-0-rescue-21acf41b46a64ca4a55e93cb350a7749

查看一下当前系统的默认内核

grubby --default-kernel

可以看到当前默认内核依旧为3.10.0-1160.45.1

/boot/vmlinuz-3.10.0-1160.45.1.el7.x86_64

修改系统的默认内核为我们新安装的内核版本

grubby --set-default "/boot/vmlinuz-5.4.233-1.el7.elrepo.x86_64"

重启系统,使内核生效

reboot

重启成功之后再次查看当前系统信息

uname -rs

可以看到当前我们使用的是新安装的内核了

Linux 5.4.233-1.el7.elrepo.x86_64

为了节省空间,我们可以按需移除老的内核

查看已安装的内核

rpm -qa | grep kernel

可以看到我们新老内核的信息,以及一些内核开发包

kernel-tools-3.10.0-1160.45.1.el7.x86_64
kernel-devel-3.10.0-1160.45.1.el7.x86_64
abrt-addon-kerneloops-2.1.11-60.el7.centos.x86_64
kernel-headers-3.10.0-1160.45.1.el7.x86_64
kernel-3.10.0-1160.45.1.el7.x86_64
kernel-lt-5.4.233-1.el7.elrepo.x86_64
kernel-tools-libs-3.10.0-1160.45.1.el7.x86_64
kernel-mft-4.15.1-100.kver.3.10.0_1160.45.1.el7.x86_64.x86_64

卸载老的内核信息,注意不要把新的内核也移除了

yum remove kernel-3.10.0-1160.45.1.el7.x86_64 \
kernel-tools-3.10.0-1160.45.1.el7.x86_64 \
kernel-devel-3.10.0-1160.45.1.el7.x86_64 \
kernel-headers-3.10.0-1160.45.1.el7.x86_64 \
kernel-tools-libs-3.10.0-1160.45.1.el7.x86_64

最后如有有需要的话,可以更新一下系统里的软件包

# yum update
yum --enablerepo=elrepo-kernel update

到此内核就升级完成了,整个过程还是相当顺畅的,不过下载新内核的时候可能网速比较慢,如果发生失败可以多试几次或者使用国内的镜像源来提速。

使用ELRepo升级CentOS内核的更多相关文章

  1. 升级CentOS内核 - 2.6升级到3.10

    *因为学习docker的需要,docker的官方推荐内核使用3.8以上,所以本人决定把CentOS内核升到长期稳定版的3.10. ##记得切换到root用户执行升级操作. [root@localhos ...

  2. 通过YUM升级centOS内核,以便安装docker

    安装Docker要满足一定的条件,对于cents系统,要求必须是64位,并且内核版本是3.10以上. 如果你的centos操作系统内核低于3.10,需要升级到这个版本以上,才能安装docker. 第一 ...

  3. 升级CentOS内核 - 2.6升级到3.10/最新内核

    ##记得切换到root用户执行升级操作. [root@localhost ~]# uname -a ##旧版 Linux localhost.localdomain 2.6.32-279.el6.i6 ...

  4. RPM方式编译升级centos内核

    [root@iZ2893wjzgyZ ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org [root@iZ2893wjzgyZ ...

  5. 升级centos内核到最新版本

    root权限执行: rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/ ...

  6. 使用yum快速升级CentOS 6.5内核到 3.10.28

    网上有不少升级CentOS内核的文章,如<CentOS 6.5 升级内核到 3.10.28>,大部分都是下载源码编译,有点麻烦. 在yum的ELRepo源中,有mainline(3.13. ...

  7. centos 升级linux内核

    =============================================== 2018/1/14_第1次修改                       ccb_warlock == ...

  8. CentOS 7.4升级Linux内核

    CentOS 7.4升级Linux内核 [日期:2018-01-15] 来源:Linux社区  作者:straycats [字体:大 中 小] 由于最近intel出了Meltdown和Spectre两 ...

  9. yum和编译两种方式升级or降级Centos内核

    http://blog.51cto.com/renzhiyuan/1882599 今天探讨用yum和编译两种方式升级或者降级内核版本: 升级:比如玩kvm,docker等虚拟化,centos内核则升级 ...

  10. Linux:centos内核升级

    centos内核升级 centos升级2.6内核到3.10 在yum的ELRepo源中,有 m ain l ine(3.13.1). l ong- t erm(3.10.28)这2个内核版本,long ...

随机推荐

  1. windows使用爱思助手制作越狱 U 盘教程

    原文链接 CheckRa1n 越狱工具需要在 macOS 系统上进行安装,借助电脑端爱思助手制作越狱 U 盘后,即可在 Windows 电脑上使用 CheckRa1n 进行越狱. 支持设备:iPhon ...

  2. Coursera Programming Languages, Part B 华盛顿大学 Week 1

    来上 programming language 的第二 part 了!这一部分介绍的语言是 Racket,之前就听说过它独特的括号语法,这次来具体了解一下 Racket definitions, fu ...

  3. RabbitMQ的全面简述讲解

    **转载自微信公众号:楼仔** 常见的消息队列很多,主要包括 RabbitMQ.Kafka.RocketMQ 和 ActiveMQ,这篇文章只讲 RabbitMQ,先讲原理,后搞实战. 思维导图: 1 ...

  4. bgp多线互联

    BGP(边界网关协议)主要用于互联网AS(自治系统)之间的互联,BGP的最主要功能在于控制路由的传播和选择最好的路由. 中国网通 .中国电信.中国铁通.教育网和一些大的民营IDC运营商都具有AS号,全 ...

  5. iOS block相关面试题

    一.前言本文重点来研究一下 objc 的 block,并具体来分析一下以下一些面试题目:block 的内部实现,结构体是什么样?block 是类吗?有哪些类型?一个 int 变量被 __block 修 ...

  6. bzoj 2115

    线性基好题 首先,如果一条路径被经过了两次,那么这条路径上的权值等于没有(废话) 基于这一点,我们其实已经找到了解决问题的方法了! 首先,由于可以反复经过一条边,因此我们可以把一条合法的路径看成这样的 ...

  7. word在指定页面设置页码

    需求:比如,毕业论文前面几页要求罗马数字(摘要-目录)(这里设置页码格式即可完成),后面全是阿拉伯数字(这里比较难搞,以下方法是解决这里的) 方法: 1. 光标移到指定页面的第一个字符所在的位置前 2 ...

  8. C和C++内存分配语法补充

    NOTE: 动态内存分配:需要加载头文件<stdlib.h>malloc(m):开辟m字节长度的地址空间,并返回首地址sizeof(x):计算变量x的长度free(p):释放指针p所指的存 ...

  9. Vivado中综合,实现,编程和调试工程可能会出现的问题及解决方案

    Xilinx公司的IDE(集成开发环境) Vivado用处广泛,学会使用Vivado对FPGA的学习至关重要,这里以PRX100-D开发板为例,对Vivado的学习使用进行探讨.本文将会持续更新,列出 ...

  10. 20193314 白晨阳 实验三 Socket编程技术

    学号 2019-2020-2 <Python程序设计>实验三报告 课程:<Python程序设计> 班级: 201933 姓名: 白晨阳 学号: 20193314 实验教师:王志 ...