文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247483766&idx=1&sn=4750fd4e2e480ad598a5c21890435c77&chksm=e9fdd482de8a5d94ab0fe39938f743761a1dd95469d7cdaf29b2825e7533dc8f0817e547f0c3&scene=21#wechat_redirect

因为需要Docker overlay网络模式,要求内核版本较高,目前3.10,刚满足最低需求,建议把内核直接升到4.x,升级版本时,一般要按先升级小版本,再升级到大版本的过程。

内核升级前

升级小版本操作步骤

  1. 查看当前可升级版本及升级
[root@kalvin ~]# yum list kernel
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
已安装的软件包
kernel.x86_64 3.10.0-957.el7 @anaconda
kernel.x86_64 3.10.0-957.21.3.el7 @updates
可安装的软件包
kernel.x86_64 3.10.0-1062.9.1.el7 updates
[root@kalvin ~]# yum -y update kernel
  1. 重启并检查
[root@kalvin ~]# uname -r
3.10.0-1062.9.1.el7.x86_64
[root@kalvin ~]#

升级大版本操作步骤

  1. 导入public key
[root@kalvin ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
  1. 使用elrepo作为yum源
[root@kalvin ~]# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
获取http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
准备中... ################################# [100%]
正在升级/安装...
1:elrepo-release-7.0-3.el7.elrepo ################################# [100%]
[root@kalvin ~]#
  1. 安装elrepo-kernel元数据
[root@kalvin ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel repolist
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
elrepo-kernel | 2.9 kB 00:00:00
elrepo-kernel/primary_db | 1.9 MB 00:00:00
源标识 源名称 状态
elrepo-kernel ELRepo.org Community Enterprise Linux Kernel Repository - el7 37
repolist: 37
[root@kalvin ~]#
  1. 查看可用的rpm包
[root@kalvin ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel list kernel*
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* elrepo-kernel: hkg.mirror.rackspace.com
已安装的软件包
kernel.x86_64 3.10.0-957.el7 @anaconda
kernel.x86_64 3.10.0-957.21.3.el7 @updates
kernel.x86_64 3.10.0-1062.9.1.el7 @updates
kernel-devel.x86_64 3.10.0-957.21.3.el7 @updates
kernel-headers.x86_64 3.10.0-957.21.3.el7 @updates
kernel-tools.x86_64 3.10.0-957.21.3.el7 @updates
kernel-tools-libs.x86_64 3.10.0-957.21.3.el7 @updates
可安装的软件包
kernel-lt.x86_64 4.4.207-1.el7.elrepo elrepo-kernel
kernel-lt-devel.x86_64 4.4.207-1.el7.elrepo elrepo-kernel
kernel-lt-doc.noarch 4.4.207-1.el7.elrepo elrepo-kernel
kernel-lt-headers.x86_64 4.4.207-1.el7.elrepo elrepo-kernel
kernel-lt-tools.x86_64 4.4.207-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs.x86_64 4.4.207-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs-devel.x86_64 4.4.207-1.el7.elrepo elrepo-kernel
kernel-ml.x86_64 5.4.6-1.el7.elrepo elrepo-kernel
kernel-ml-devel.x86_64 5.4.6-1.el7.elrepo elrepo-kernel
kernel-ml-doc.noarch 5.4.6-1.el7.elrepo elrepo-kernel
kernel-ml-headers.x86_64 5.4.6-1.el7.elrepo elrepo-kernel
kernel-ml-tools.x86_64 5.4.6-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs.x86_64 5.4.6-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs-devel.x86_64 5.4.6-1.el7.elrepo elrepo-kernel
[root@kalvin ~]#

说明:

  • lt:long term support,长期支持;
  • ml:mainline,主线版本
  1. 安装长期支持版本kernel-lt.x86_64
[root@kalvin ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel -y install kernel-lt.x86_64
  1. 删除旧版本工具包
[root@kalvin ~]# rpm -qa |grep kernel
kernel-lt-4.4.207-1.el7.elrepo.x86_64
kernel-tools-3.10.0-957.21.3.el7.x86_64
kernel-headers-3.10.0-957.21.3.el7.x86_64
kernel-3.10.0-957.el7.x86_64
kernel-tools-libs-3.10.0-957.21.3.el7.x86_64
kernel-3.10.0-957.21.3.el7.x86_64
kernel-devel-3.10.0-957.21.3.el7.x86_64
kernel-3.10.0-1062.9.1.el7.x86_64
[root@kalvin ~]# yum -y remove kernel-tools-libs-3.10.0-957.21.3.el7.x86_64 kernel-tools-3.10.0-957.21.3.el7.x86_64
  1. 安装新版本的工具包
[root@kalvin ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel -y install kernel-lt-tools.x86_64
  1. 查看内核插入顺序
[root@kalvin ~]# awk -F \' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (4.4.207-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1062.9.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-957.21.3.el7.x86_64) 7 (Core)
3 : CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
4 : CentOS Linux (0-rescue-20190711105006363114529432776998) 7 (Core)
[root@kalvin ~]#
  1. 查看当前实际启动内核版本
[root@kalvin ~]# grub2-editenv list
saved_entry=CentOS Linux (3.10.0-1062.9.1.el7.x86_64) 7 (Core)
[root@kalvin ~]#
  1. 设置默认启动(这里的0,可以使用上面第8步中的$2替换)
[root@kalvin ~]# grub2-set-default 0
[root@kalvin ~]# grub2-editenv list
saved_entry=0
[root@kalvin ~]#
  1. 重启并检查
[root@kalvin ~]# uname -r
4.4.207-1.el7.elrepo.x86_64
[root@kalvin ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
[root@kalvin ~]#

内核升级后

总结

  • 升级过程需要注意下,一般先升级小版本,然后再升级大版本;
  • 使用elrepo yum源进行升级,lt代表长期支持版本,ml是主线版本;

Centos7.6内核升级的更多相关文章

  1. Centos7 kernel 内核升级 GPU显卡驱动程序编译安装

    1.NVIDIA官网下载相关显卡驱动 #在服务器上查看网卡型号 lspci -mm | grep NVIDIA   #在NVIDIA官网下载相应型号驱动程序 https://www.geforce.c ...

  2. centos7内核升级

    默认centos7的内核版本是3.10,升级的原因是为了测试openvswitch的vlan技术,默认openvswitch的2.3版本是允许centos7默认内核3.10支持,下面是软件与内核版本对 ...

  3. centos7内核升级及curl访问https证书过期处理

    centos7内核升级及curl访问https证书过期处理 先看下当前系统的linux内核版本 uname -r 3.10.0-229.el7.x86_64 升级步骤 1.rpm --import h ...

  4. centos7.4内核从3.10升级到4.14详细步骤

    由于我们的docker学习中的Overlay需要内核版本在3.12+,所以在安装完centos7.4之后要进行内核升级,下面是升级步骤:1.导入keyrpm --import https://www. ...

  5. centos7无故重启-内核升级

    最近有一台物理服务器,centos7操作系统,无故重启,每天都会发生这种情况: 解决: 升级内核 CentOS 允许使用 ELRepo,这是一个第三方仓库,可以将内核升级到最新版本,使用ELRepo升 ...

  6. CentOS7.0 内核(3.10.0-123.el7.x86_64)bug导致KVM物理机重启

    一.问题描述 服务器硬件:DELL R720 系统版本:CentOS7.0 内核版本:3.10.0-123.el7.x86_64 故障现象:偶尔会重启 二.问题原因 经查看dmesg日志发现是kern ...

  7. Linux内核升级修复系统漏洞-RHSA-2017:2930-Important: kernel security and bug fix update

    公司使用的阿里云服务器(Centos7.4 x86_64bit)内核版本为:3.10.0-693.21.1.el7.x86_64, 2019年3月4日 02:07:58通过云盾安骑士-->漏洞管 ...

  8. linux 内核升级

    LINUX 内核升级 linux 内核官网 https://www.kernel.org/ POST BIOS(boot sequence) 所选择的启动设备次序的MBR中是否有引导程序, ----& ...

  9. linux内核升级图文攻略(转)

    一.Linux内核概览Linux是一个一体化内核(monolithic kernel)系统.设备驱动程序可以完全访问硬件.Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置 ...

随机推荐

  1. Tapdata 实时数据融合平台解决方案(四):技术选型

    作者介绍:TJ,唐建法,Tapdata 钛铂数据CTO,MongoDB中文社区主席,原MongoDB大中华区首席架构师,极客时间MongoDB视频课程讲师. 常见搭建数据中台的技术产品 数据中台包括: ...

  2. 编程思想转换&体验Lambda的更优写法和Lambda标准格式

    编程思想转换做什么,而不是怎么做 我们真的希望创建一个匿名内部类对象吗?不,我们只是为了做这件事情而不得不创建一个对象. 我们真正希望做的事情是:将run方法体内的代码传递给Thread类知晓. 传递 ...

  3. do-while循环和三种循环的区别

    循环语句3--do...while do...while循环格式 初始化表达式① do{ 循环体③ 步进表达式④ }while(布尔表达式②); 执行流程 执行顺序:①③④>②③④>②③④ ...

  4. SpringBoot接口 - 如何优雅的对接口返回内容统一封装?

    在以SpringBoot开发Restful接口时,统一返回方便前端进行开发和封装,以及出现时给出响应编码和信息.@pdai SpringBoot接口 - 如何优雅的对接口返回内容统一封装? RESTf ...

  5. markdown练习显示

    1.[markdown学习网址1]https://sspai.com/post/25137 2.[markdown学习网址1]https://www.runoob.com/markdown/md-pa ...

  6. OpenCV视频防抖技术解析

    视频防抖有很多种技术,各有优劣,主流的目前分为三种:EIS电子防抖EIS电子防抖是通过软件算法实现防抖的.其技术运作原理是通过加速度传感器和陀螺仪模块侦测手机抖动的幅度,从而来动态调节整ISO.快门以 ...

  7. Java面试题(三)--虚拟机

    1 内存结构 1.简述一下JVM的内存结构?(高频) JVM在执行Java程序时,会把它管理的内存划分为若干个的区域,每个区域都有自己的用途和创建销毁时间.如下图所示,可以分为两大部分,线程私有区和共 ...

  8. SP104 Highways (矩阵树,高斯消元)

    矩阵树定理裸题 //#include <iostream> #include <cstdio> #include <cstring> #include <al ...

  9. java学习第二天面向对象.day07

    变量的生命周期 成员变量:存储在堆内存中,随着对象的销毁而销毁 局部变量:存储在栈内存中,随着所定义方法的调用结束而销毁 局部变量存储在方法中,每次调用方法都会在栈空间开辟一块内存空间--栈帧,方法调 ...

  10. Go语言Tips

    时间日期格式化 time.Now().Format("2006-01-02") 原生DefaultServeMux支持restful路由 ref: https://towardsd ...