centos7升级内核至最新
应用背景:
最近在接触docker,其对内核版本要求较高,就连目前使用的centos7.x默认内核版本为3.10.0-xxx,也是刚好满足其最低要求,故借此机会记录一下升级内核的操作步骤。
测试环境:
| 系统 | 当前内核版本 | 小版本升级 |
| CentOS 7.6 | 3.10.0-957 | 3.10.0-957.5.1 |
| 系统 | 当前内核版本 | 大版本升级 |
| CentOS 7.6 | 3.10.0-957 | 4.20.12-1(目前最新) |
操作步骤:
小版本升级
1. 查看当前和可升级版本
[root@server- ~]# yum list kernel
Installed Packages
kernel.x86_64 3.10.-.el7 @anaconda
Available Packages
kernel.x86_64 3.10.-957.5.1.el7 updates
2. 升级
[root@server- ~]# yum update kernel -y
3. 重启并检查
[root@server- ~]# reboot
[root@server- ~]# uname -r
大版本升级
1. 载入公钥
[root@server- ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
2. 升级安装ELRepo
[root@server- ~]# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
3. 载入elrepo-kernel元数据
[root@server- ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel repolist
4. 查看可用的rpm包
[root@server- ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel list kernel*
Installed Packages
kernel.x86_64 3.10.-.el7 @anaconda
kernel.x86_64 3.10.-957.5..el7 @updates
kernel-tools.x86_64 3.10.-.el7 @anaconda
kernel-tools-libs.x86_64 3.10.-.el7 @anaconda
Available Packages
kernel-lt.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-devel.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-doc.noarch 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-headers.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-tools.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-tools-libs.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-lt-tools-libs-devel.x86_64 4.4.-.el7.elrepo elrepo-kernel
kernel-ml.x86_64 4.20.12-1.el7.elrepo elrepo-kernel // 安装目标版本
kernel-ml-devel.x86_64 4.20.-.el7.elrepo elrepo-kernel
kernel-ml-doc.noarch 4.20.-.el7.elrepo elrepo-kernel
kernel-ml-headers.x86_64 4.20.-.el7.elrepo elrepo-kernel
kernel-ml-tools.x86_64 4.20.-.el7.elrepo elrepo-kernel
kernel-ml-tools-libs.x86_64 4.20.-.el7.elrepo elrepo-kernel
kernel-ml-tools-libs-devel.x86_64 4.20.-.el7.elrepo elrepo-kernel
说明:
lt :long term support,长期支持版本;
ml:mainline,主线版本;
5. 安装最新版本的kernel
[root@server- ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel install kernel-ml.x86_64 -y
6. 删除旧版本工具包
[root@server- ~]# yum remove kernel-tools-libs.x86_64 kernel-tools.x86_64 -y
7. 安装新版本工具包
[root@server- ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel install kernel-ml-tools.x86_64 -y
8. 查看内核插入顺序
[root@server- ~]# awk -F \' '$=="menuentry " {print i++ " : " $}' /etc/grub2.cfg
: CentOS Linux (4.20.-.el7.elrepo.x86_64) (Core)
: CentOS Linux (3.10.-957.5..el7.x86_64) (Core)
: CentOS Linux (3.10.-.el7.x86_64) (Core)
: CentOS Linux (-rescue-ca0f6fb3c5f24478abc0a2e275281d7a) (Core)
说明:默认新内核是从头插入,默认启动顺序也是从0开始(当前顺序还未生效),或者使用:
[root@server- ~]# grep "^menuentry" /boot/grub2/grub.cfg | cut -d "'" -f2
CentOS Linux (4.20.-.el7.elrepo.x86_64) (Core)
CentOS Linux (3.10.-957.5..el7.x86_64) (Core)
CentOS Linux (3.10.-.el7.x86_64) (Core)
CentOS Linux (-rescue-ca0f6fb3c5f24478abc0a2e275281d7a) (Core)
其中文件 /etc/grub2.cfg 和 /boot/grub2/grub.cfg 内容一致。
9. 查看当前实际启动顺序
[root@server- ~]# grub2-editenv list
saved_entry=CentOS Linux (3.10.-957.5..el7.x86_64) (Core)
10. 设置默认启动
[root@server- ~]# grub2-set-default 'CentOS Linux (4.20.12-1.el7.elrepo.x86_64) 7 (Core)'
[root@server- ~]# grub2-editenv list
saved_entry=CentOS Linux (4.20.-.el7.elrepo.x86_64) (Core)
或者直接设置数值
[root@server- ~]# grub2-set-default 0 // 0代表当前第一行,也就是上面的4.20.12版本那一行内容
[root@server- ~]# grub2-editenv list
saved_entry=
11. 重启并检查
[root@server- ~]# reboot
[root@server- ~]# uname -r
参考: https://github.com/gjmzj/kubeasz/blob/master/docs/guide/kernel_upgrade.md
https://wiki.centos.org/HowTos/Grub2#head-535f476a61e62f24bc150c73f7e0816f85345f46
centos7升级内核至最新的更多相关文章
- centos7 升级内核到最新版本
centos7 从问世以来,官网提供的镜像始终是3.10 版本,该版本最大的一个问题是对硬件驱动(尤其是无线网卡)的支持不是很好,本人亲测>5种机型,无线网卡均无法正常使用,如果是非主流机型,手 ...
- Centos7 升级内核版本
1.查看当前内核版本 $ uname -r -.el7.x86_64 $ uname -a Linux k8s-master -.el7.x86_64 # SMP Tue Nov :: UTC x86 ...
- centos7升级内核
载入elrepo源,搜索内核更新资源,并进行更新操作. 具体实验步骤: # 载入公钥rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org ...
- CentOS7升级内核kernel5.0
升级过程: 原系统:CentOS7.3 [root@my-e450 ~]# uname -r3.10.0-514.el7.x86_64 安装必需的软件包: # yum update# yum inst ...
- Centos7升级内核后无法启动解决办法
前言 这个问题存在有一段时间了,之前做的centos7的ISO,在进行内核的升级以后就存在这个问题: 系统盘在板载sata口上是可以正常启动新内核并且能识别面板硬盘 系统盘插在面板口上新内核无法启动, ...
- centos7升级内核版本
本文转载http://blog.csdn.net/nciasd/article/details/51490146,大神非常厉害!!!!! 查看当前系统的内核版本 # uname -r 1.导入key ...
- Linux:Centos7升级内核(转)
更新前,内核版本为: uname -r 3.10.0-327.10.1.el7.x86_64 升级的方法: 1.导入key rpm --import https://www.elrepo.org/RP ...
- Centos7 升级内核和应用TCP BBR 算法
首先确认目前使用内核 uname -r rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.e ...
- centos7 升级内核
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elrepo-rel ...
随机推荐
- 【开源分享】微信营销系统(第三方微信平台)github 开源
升讯威微信营销系统(微信第三方平台) 在线体验:http://wxcm.eeipo.cn/开源地址GitHub:https://github.com/iccb1013/Sheng.WeixinCons ...
- 安装odoo小程序商城模块报错 KeyError: u'oejia_weshop'
错误截图如下 检查模块目录名是否不是 oejia_weshop,比如 oejia_weshop-master,注意odoo的模块名不能随便更改,odoo小程序商城模块目录名必须是oejia_wesho ...
- 一些android开发实用性网站记录
android开发一些有用的网站有很多,可以方便我们开发,记录一下哈. 1.Android源代码在线阅读:https://www.androidos.net.cn/sourcecode 2.在线Jso ...
- [20190419]shared latch spin count 2.txt
[20190419]shared latch spin count 2.txt --//上午测试shared latch XX模式的情况,链接:http://blog.itpub.net/267265 ...
- angularjs兼容thickbox 插件
ThickBox是一个基于JQuery类库的扩展,它能在浏览器界面上显示非常棒的UI框, 它可以显示单图片,多图片,ajax请求内容或链接内容.ThickBox 是用超轻量级的 jQuery 库 编写 ...
- hexo 建站参考
1. hexo 官网 2. 主题 AD:https://godbmw.com/ 前期尝试了两天都是看主题,还有编辑主题,最终选择这个主题是因为两点 主题layout是 ejs 学习node时候了解过 ...
- UOJ 275. 【清华集训2016】组合数问题
UOJ 275. [清华集训2016]组合数问题 组合数 $C_n^m $表示的是从 \(n\) 个物品中选出 \(m\) 个物品的方案数.举个例子,从$ (1,2,3)(1,2,3)$ 三个物品中选 ...
- vue使用npm run build命令打包
vue使用npm run build命令打包项目 当我们使用vue-cli脚手架完成一个项目的时候,下一步肯定会想要怎么把这个项目放到互联网上或者本地直接打开呢,我们在本地调试的时候只要命令行执行 ...
- ASP.NET MVC 自定义模型绑定1 - 自动把以英文逗号分隔的 ID 字符串绑定成 List<int>
直接贴代码了: CommaSeparatedModelBinder.cs using System; using System.Collections; using System.Collection ...
- 华为笔记HOSTS,便于访问云端存储
# Copyright (c) - Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windo ...