linux内核离线升级步骤详解【亲测可用】
由于种种原因,linux的内核版本需要升级,但由于生产原因往往不能在线升级,在此记录笔者本人昨晚的的离线升级步骤,亲测可用。
我们知道,红帽和CentOS同源同宗,内核升级步骤也是一样的。
■ Red Hat / CentOS 7最新内核下载
内核版本 5.4.214 于 2022-9-18 发布,lt 是指长期支持版本 long term
wget https://mirrors.aliyun.com/elrepo/kernel/el7/x86_64/RPMS/kernel-lt-5.4.214-1.el7.elrepo.x86_64.rpm --no-check-certificate
在以上地址可以下载各个版本的内核,再次向阿里云、网易、163、清华等这些开源镜像提供者致敬,不愧大家风范,方便了国内用户对开源软件的使用。
■ 内核安装
yum localinstall kernel-lt-5.4.214-1.el7.elrepo.x86_64.rpm
可能有包依赖关系,视情况配置yum源,或下载指定包
■ 此时查看所有的内核
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/grub2/grub.cfg
---【Red Hat】输出类似如下:
0 : Red Hat Enterprise Linux Server (5.4.214-1.el7.elrepo.x86_64) 7.3 (Maipo)
1 : Red Hat Enterprise Linux Server (3.10.0-514.el7.x86_64) 7.3 (Maipo)
2 : Red Hat Enterprise Linux Server (0-rescue-13fa607805964427bb4a2297f3619e6e) 7.3 (Maipo)
---【CentOS】输出类似如下:
0 : CentOS Linux (5.4.214-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.15.2.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-6d425900e59b4ef18c98680ce9a348dd) 7 (Core)
可见已有多个内核,包括原内核 1 与新安装的内核 0
■ 内核配置
新内核安装后,需修改os已有的内核启动顺序,默认启动的顺序应该为1,升级以后内核是往前面插入为0,则需设置GRUB_DEFAULT=0。
默认的配置文件 /etc/default/grub ,参数 GRUB_DEFAULT=saved
vim /etc/default/grub
GRUB_DEFAULT=saved
需改为:
GRUB_DEFAULT=0
■ 重新生成grub配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
---输出类似如下:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.4.214-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-5.4.214-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-514.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-514.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-13fa607805964427bb4a2297f3619e6e
Found initrd image: /boot/initramfs-0-rescue-13fa607805964427bb4a2297f3619e6e.img
done
■ 然后重启系统生效
reboot
■ 在 Red Hat 7.3 测试内核升级
[root@node5 ~]# cat /etc/*release
Red Hat Enterprise Linux Server release 7.3 (Maipo)
【升级前】
[root@node5 ~]# uname -a
Linux node5 3.10.0-514.el7.x86_64 #1 SMP Wed Oct 19 11:24:13 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@node5 ~]# cat /proc/version
Linux version 3.10.0-514.el7.x86_64 (mockbuild@x86-039.build.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Wed Oct 19 11:24:13 EDT 2016
[root@node5 ~]# uname -rs
Linux 3.10.0-514.el7.x86_64
【升级后】
[root@node5 ~]# uname -a
Linux node5 5.4.214-1.el7.elrepo.x86_64 #1 SMP Sat Sep 17 11:09:50 EDT 2022 x86_64 x86_64 x86_64 GNU/Linux
[root@node5 ~]# cat /proc/version
Linux version 5.4.214-1.el7.elrepo.x86_64 (mockbuild@Build64R7) (gcc version 9.3.1 20200408 (Red Hat 9.3.1-2) (GCC)) #1 SMP Sat Sep 17 11:09:50 EDT 2022
[root@node5 ~]# uname -rs
Linux 5.4.214-1.el7.elrepo.x86_64
■ 在 CentOS 7.6 测试内核升级
[root@node3:0 ~]# cat /etc/*release
CentOS Linux release 7.6.1810 (Core)
【升级前】
[root@node3:0 ~]# uname -a
Linux node3 3.10.0-1160.15.2.el7.x86_64 #1 SMP Wed Feb 3 15:06:38 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
[root@node3:0 ~]# cat /proc/version
Linux version 3.10.0-1160.15.2.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Wed Feb 3 15:06:38 UTC 2021
[root@node3:0 ~]# uname -rs
Linux 3.10.0-1160.15.2.el7.x86_64
【升级后】
[root@node3:0 ~]# uname -a
Linux node3 5.4.214-1.el7.elrepo.x86_64 #1 SMP Sat Sep 17 11:09:50 EDT 2022 x86_64 x86_64 x86_64 GNU/Linux
[root@node3:0 ~]# cat /proc/version
Linux version 5.4.214-1.el7.elrepo.x86_64 (mockbuild@Build64R7) (gcc version 9.3.1 20200408 (Red Hat 9.3.1-2) (GCC)) #1 SMP Sat Sep 17 11:09:50 EDT 2022
[root@node3:0 ~]# uname -rs
Linux 5.4.214-1.el7.elrepo.x86_64
linux内核离线升级步骤详解【亲测可用】的更多相关文章
- react-native模拟机调试步骤详解 ——亲测有效!!!!
步骤 1 下载安装夜神模拟器,去夜神官网下载即可!然后安装完成!进入到初始化项目的目录,打开cmd命令,运行adb connect 127.0.0.1:62001 链接模拟器 2 链接完成之后,运行安 ...
- DataGrip for Mac破解步骤详解 亲测好用
https://blog.csdn.net/le945926/article/details/81912085
- 【转】postgresql 9.4 在linux环境的安装步骤详解
本文章来为各位介绍一篇关于postgresql 9.4 在linux环境的安装步骤详解,希望文章能够对各位新手朋友带来帮助的哦. 环境说明系统:centos 6.4 64位软件:postgresql ...
- Linux内核数据结构之kfifo详解
本文分析的原代码版本: 2.6.24.4 kfifo的定义文件: kernel/kfifo.c kfifo的头文件: include/linux/kfifo.h kfifo是内核里面的一个First ...
- Linux 内核参数 arp_ignore & arp_announce 详解
arp_ignore定义了对目标地址为本机IP的ARP询问的不同应答模式. arp_announce对网络接口(网卡)上发出的ARP请求包中的源IP地址作出相应的限制:主机会根据这个参数值的不同选择使 ...
- Linux内核线程kernel thread详解--Linux进程的管理与调度(十)
内核线程 为什么需要内核线程 Linux内核可以看作一个服务进程(管理软硬件资源,响应用户进程的种种合理以及不合理的请求). 内核需要多个执行流并行,为了防止可能的阻塞,支持多线程是必要的. 内核线程 ...
- Linux内核线程kernel thread详解--Linux进程的管理与调度(十)【转】
转自:http://blog.csdn.net/gatieme/article/details/51589205 日期 内核版本 架构 作者 GitHub CSDN 2016-06-02 Linux- ...
- Linux内核中kzalloc函数详解
**************************************************************************************************** ...
- Linux内核中container_of函数详解
http://www.linuxidc.com/Linux/2016-08/134481.htm
- Linux内核之页面换出详解
kswap线程主要用于页面的定期换出,接下来说说kswap线程的实现 首先kswap线程的初始化时,需要根据物理内存的大小设置一个page_cluster变量的值,这个值表示预读数目 (比如本来只读一 ...
随机推荐
- 面试官:“同学,你做的这几个项目都不错。但怎么问QPS你就胡说呢?”
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 这位同学,你比上一位面试者好多了,你的简历中做的几个项目都不错.既有业务项目,也有技术项目,看 ...
- 【Netty】02-入门
二. Netty 入门 1. 概述 1.1 Netty 是什么? Netty is an asynchronous event-driven network application framework ...
- 数据安全没保证?GaussDB(for Redis)为你保驾护航
摘要:GaussDB (for Redis)通过账号管理.权限隔离.高危命令禁删/重命名.安全IP免密登录.实例回收站等企业级特性,保障用户数据库数据和信息安全. 本文分享自华为云社区<数据安全 ...
- CentOS 7相关操作
防火墙操作 开启防火墙 sudo systemctl start firewalld.service 查看防火墙状态 sudo systemctl status firewalld.service 关 ...
- Python异常模块与包
Python异常模块与包 一.了解异常 1.1 什么是异常 当检测到一个错误时,Python解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的"异常", 也就是我们常说 ...
- test.sh
#!/bin/bash echo "=== show OS version ===" cat /etc/os-release echo "=== show IP addr ...
- 关于No changes detected
查看app在settings.py文件夹中是否有注册.
- Redis从入门到放弃(8):哨兵模式
在前面的文章中介绍了Redis的主从复制,但主从复制存在一定的缺陷.如果Master节点宕机,因为不具备自动恢复功能,需要人工干预,那么在这个干预过程中Redis将不可用. 为了解决这一问题,Redi ...
- [grpc]双向tls加密认证
前言 假设gRPC服务端的主机名为qw.er.com,需要为gRPC服务端和客户端之间的通信配置tls双向认证加密. 生成证书 生成ca根证书.生成过程会要求填写密码.CN.ON.OU等信息,记住密码 ...
- CentOS7更新OpenSSH
前言 整个过程不要断开ssh链接,如有必要可使用telnet远程操作. 系统版本:centos 7.9 OpenSSL版本:1.0.2k -> 1.1.1q OpenSSH版本:7.4p1 -& ...