在腾讯云中部署了一些服务器,操作系统使用的是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. echars简单使用

    引入js <script type="text/javascript" src="js/echarts.js" ></script> 记 ...

  2. postman导出Collection文件

    postman接口调用工具可以将曾经使用过的请求配置导出为文件保存,方法如下: 1.编写一个接口测试用例 2.按组分类 3.导出 参考来源: https://blog.csdn.net/IBLiplu ...

  3. 手动实现IOC

    spring官方实现的ioc是通过反射和xml技术实现的,下面我们可以根据这个思路简单实现一下IOC,此处省略构建项目,项目的整体结构如图 第一步,在resources目录下创建beans.xml文件 ...

  4. 关于Docker容器内不能ping通外网

    先在主机重启docker服务 systemctl stop docker systemctl start docker 然后再开启容器,进入容器 https://blog.csdn.net/qq_42 ...

  5. ubuntu ssh远程访问出现Permission denied(publickey,password)解决方法

    windows上安装SSH服务设置–>应用–>可选功能–>添加功能–>安装 OpenSSH服务器 和 OpenSSH客户端在左下角搜索栏输入服务,将相关SSH服务设置为自动(延 ...

  6. 07 从RDD创建DataFrame

    1.pandas df 与 spark df的相互转换 df_s=spark.createDataFrame(df_p) df_p=df_s.toPandas() 2. Spark与Pandas中Da ...

  7. Flink笔记

    高可用(HA):直白来说就是系统不会因为某台机器,或某个实例挂了,就不能提供服务了.高可用需要做到分布式.负载均衡.自动侦查.自动切换.自动恢复等. 高吞吐: 单位时间内,能传输的数据量,对应指标就是 ...

  8. Vue项目目录树

  9. 项目引入fastclick 导致ios中input需要多次点击才能触发focus

    main.js中引入之后的修改 import FastClick from "fastclick"; FastClick.prototype.focus = function (t ...

  10. C语言初级阶段4——数组3——字符数组

    C语言初级阶段4--数组3--字符数组 字符数组的定义:储存字符类型数据的集合 1.注意:如果用字符串给字符数组初始化,那么不需要{},但是要有"". 2.%s :用来输出字符串的 ...