CentOS 7 升级 Linux 内核
一、YUM升级内核
1、更新仓库
yum -y update
2、用 ELRepo 仓库
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
3、查看可用的系统内核包(可以看到,只有 4.4 和 4.20 两个版本可以使用)
[root@localhost ~]# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* elrepo-kernel: mirrors.neusoft.edu.cn
elrepo-kernel | 2.9 kB ::
elrepo-kernel/primary_db | 1.8 MB ::
可安装的软件包
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.-.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
perf.x86_64 4.20.-.el7.elrepo elrepo-kernel
python-perf.x86_64 4.20.-.el7.elrepo elrepo-kerne
4、安装最新内核
yum --enablerepo=elrepo-kernel install kernel-ml
5.查看系统上的所有可以内核
[root@localhost ~]# awk -F\' '$=="menuentry " {print i++ " : " $}' /etc/grub2.cfg
: CentOS Linux (4.20.-.el7.elrepo.x86_64) (Core)
: CentOS Linux (3.10.-957.1..el7.x86_64) (Core)
: CentOS Linux (3.10.-.el7.x86_64) (Core)
: CentOS Linux (-rescue-87b5a0a60fc351ad00a94aa3c5b30baa) (Core)
6.设置 grub2,并生成grub配置文件
[root@localhost ~]# grub2-set-default
[root@localhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.20.-.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.20.-.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.-957.1..el7.x86_64
Found initrd image: /boot/initramfs-3.10.-957.1..el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.-.el7.x86_64
Found initrd image: /boot/initramfs-3.10.-.el7.x86_64.img
Found linux image: /boot/vmlinuz--rescue-87b5a0a60fc351ad00a94aa3c5b30baa
Found initrd image: /boot/initramfs--rescue-87b5a0a60fc351ad00a94aa3c5b30baa.img
done
7.重启并查看当前内核
[root@localhost ~]# reboot
[root@localhost ~]# uname -r
4.20.-.el7.elrepo.x86_64
二、离线RPM包安装内核
1.下载RPM包
https://elrepo.org/linux/kernel/el7/x86_64/RPMS/ #选择自己想要的版本下载对应的
[root@localhost ~]# wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-4.4.206-1.el7.elrepo.x86_64.rpm
[root@localhost ~]# wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-devel-4.4.206-1.el7.elrepo.x86_64.rpm
2.安装RPM包
[root@localhost ~]# yum localinstall -y kernel-lt-4.4.-.el7.elrepo.x86_64.rpm kernel-lt-devel-4.4.-.el7.elrepo.x86_64.rpm
3.查看当前系统上的所有可用内核启动项
非 UEFI 设备(Legacy):
[root@localhost ~]# awk -F\' '$=="menuentry " {print i++ " : " $}' /etc/grub2.cfg
: CentOS Linux (4.4.-.el7.elrepo.x86_64) (Core)
: CentOS Linux (3.10.-.el7.x86_64) (Core)
: CentOS Linux (-rescue-395aa029d0cca260e8304b6bf0846236) (Core)
UEFI 设备(Legacy):
[root@localhost ~]# awk -F\' '$=="menuentry " {print i++ " : " $}' /boot/efi/EFI/centos/grub.cfg
: CentOS Linux (4.4.-.el7.elrepo.x86_64) (Core)
: CentOS Linux (3.10.-.el7.x86_64) (Core)
: CentOS Linux (-rescue-e2c56988fd1743ab9d8902c5dd4d4cc1) (Core)
#注意文件名称
4.修改默认启动项
默认启动项由/etc/default/grub中的GRUB_DEFAULT控制。
如果GRUB_DEFAULT=saved,则该参数将存储在/boot/grub2/grubenv中。可使用grub2-editenv list查看:
[root@localhost ~]# grub2-editenv list
saved_entry=CentOS Linux (3.10.-.el7.x86_64) (Core)
通过grub2-set-default命令修改默认启动项。由之前的输出可知 CentOS Linux (4.4.206-1.el7.elrepo.x86_64) 7 (Core) 的启动序号为0
1).通过启动序号设置4.4.205-1.el7.elrepo.x86_64为默认启动内核
[root@localhost ~]# grub2-editenv list
saved_entry=0 #0为4.4内核启动序号
重启并查看内核版本
[root@localhost ~]# reboot
[root@localhost ~]# uname -r
4.4.-.el7.elrepo.x86_64
2).通过内核名称设置4.4.205-1.el7.elrepo.x86_64为默认启动内核
恢复至3.10内核
[root@localhost ~]# grep "^menuentry" /boot/grub2/grub.cfg
[root@localhost ~]# grub2-set-default
[root@localhost ~]# grub2-editenv list
saved_entry=
[root@localhost ~]# reboot
[root@localhost ~]# uname -r
3.10.-.el7.x86_64
通过内核名称设置4.4.205-1.el7.elrepo.x86_64为默认启动内核
[root@localhost ~]# grub2-set-default "CentOS Linux (4.4.206-1.el7.elrepo.x86_64) 7 (Core)"
[root@localhost ~]# grub2-editenv list
saved_entry=CentOS Linux (4.4.-.el7.elrepo.x86_64) (Core)
重启查看内核版本
[root@localhost ~]# reboot
[root@localhost ~]# uname -r
4.4.-.el7.elrepo.x86_64
本文yum安装完全抄自:https://blog.csdn.net/kikajack/article/details/79396793
CentOS 7 升级 Linux 内核的更多相关文章
- CentOS 7.4升级Linux内核
CentOS 7.4升级Linux内核 [日期:2018-01-15] 来源:Linux社区 作者:straycats [字体:大 中 小] 由于最近intel出了Meltdown和Spectre两 ...
- 如何在Ubuntu/CentOS上安装Linux内核4.0
大家好,今天我们学习一下如何从Elrepo或者源代码来安装最新的Linux内核4.0.代号为‘Hurr durr I'm a sheep’的Linux内核4.0是目前为止最新的主干内核.它是稳定版3. ...
- centos6.5升级Linux内核步骤
centos6.5升级Linux内核步骤 http://www.jianshu.com/p/c75f00182b4c 使用的操作系统是是centos6.5,按照官方的推荐的配置,把linux内核升级到 ...
- 管理员技术(三): 配置静态网络地址、 使用yum软件源 、 升级Linux内核、查找并处理文件、查找并提取文件内容
一. 配置静态网络地址 目标: 本例要求为虚拟机 server 配置以下静态地址参数: 1> 主机名:server0.example.com 2> IP地址:172.25.0.11 ...
- centos 升级linux内核
=============================================== 2018/1/14_第1次修改 ccb_warlock == ...
- Centos下编译Linux内核
Linux内核编译是一件简单却费事的事.但是独立的编译linux内核会帮助你很好的理解Linux内核的工作机理. 首先编译linux内核我们需要在当前linux操作系统下安装gcc编译器,因为我是Ce ...
- 升级Linux内核导致vmware无法使用(vmnet模块无法编译)解决方式
近期将ubuntu升级到了14.04,出现了vmware无法启动的情况. 详细表现为:每次启动的时候都会弹出一个VMWare Kernel Module Updater的对话框,要求依据当前内核版本号 ...
- 升级 Linux 内核版本(编译源代码)
升级内核版本(自己编译源码) 从 linux 官网 https://www.kernel.org/ 下载内核源码 解压 tar -xvf linux-4.16.8.tar.xz cd linux-4. ...
- 升级linux内核(2.6.32->3.10.81),安装docker
1.内核升级环境准备 #查看已经安装的和未安装的软件包组,来判断我们是否安装了相应的开发环境和开发库: yum grouplist #一般是安装这两个软件包组,这样做会确定你拥有编译时所需的一切工具 ...
随机推荐
- 聊一聊 redux 异步流之 redux-saga
让我惊讶的是,redux-saga 的作者竟然是一名金融出身的在一家房地产公司工作的员工(让我想到了阮老师...),但是他对写代码有着非常浓厚的热忱,喜欢学习和挑战新的事物,并探索新的想法.恩,牛逼的 ...
- 使用日期操作类(Calendar)获得几秒、几分钟、几小时之前的时间
public String dealDate(String case_time){ // 日期操作类 Calendar calendar = Calendar.getInstance(); // 当前 ...
- zoj 1649 bfs
Angel was caught by the MOLIGPY! He was put in prison by Moligpy. The prison is described as a N * M ...
- buildroot管理uboot+kernel+rootfs
鉴于自己制作根文件系统太麻烦了,所以想用buildroot管理uboot,kernel,另外还可以自动生产rootfs,于是花了两天研究了下buildroot的框架和使用,在自己的2440开发板上也跑 ...
- 学习笔记TF055:TensorFlow神经网络简单实现一元二次函数
TensorFlow运行方式.加载数据.定义超参数,构建网络,训练模型,评估模型.预测. 构造一个满足一元二次函数y=ax^2+b原始数据,构建最简单神经网络,包含输入层.隐藏层.输出层.Tensor ...
- javascript中正则动态替换为对象中的相应数据
使用正则进行替换以下内容 var str = 'aKey={aValue}&bKey={bValue}' 使用以下对象数据,替换value var obj = { aValue: 1, bVa ...
- C# DataView数据处理的几种方法
1.找到刚删除的所有列 DataView dv = dt.DefaultView; dv.Delete(); dv.Delete(); //找出所有刚删除掉的行 1.5 dv.RowStateFilt ...
- [小程序]_ELVE_小程序开发(1)
最近在自学小程序,但是网上大部分重点都放在了界面的设计上,涉及到后端的很少,博主索性写点博客总结一下. #0X01 node.js环境搭建 不同于其他教程,本系列先重点介绍服务器端,后续再介绍客户端 ...
- vim编辑器学习记录
i:在光标所在字符前开始插入 a:在光标所在字符后开始插入 o:在光标所在行的下面另起一新行插入 s:删除光标所在的字符并开始插入 I:在光标所在行的行首开始插入 如果行首有空格则在空格之后插入 A: ...
- JavaWeb之搭建自己的MVC框架
https://blog.csdn.net/anita9999/article/details/83378111 自己写一个mvc框架吧(一) https://www.cnblogs.com/heba ...