Centos7 升级内核

庆云2年前技术文章958

1、查看当前内核版本

$ uname -rs
Linux 3.10.0-1160.45.1.el7.x86_64


2、安装 ELRepo

# 载入公钥
$ rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

# 安装 ELRepo 最新版本
$ yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm


3、安装最新的内核版本

查询可使用的 Kernel 包版本:

  • lt 表示长期维护版

  • ml 表示最新稳定版

$ yum list available --disablerepo=* --enablerepo=elrepo-kernel
Loaded plugins: fastestmirror
elrepo-kernel                                                                    | 3.0 kB  00:00:00    
elrepo-kernel/primary_db                                                         | 3.1 MB  00:01:45    
Determining fastest mirrors
* elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
Available Packages
kernel-lt.x86_64                              5.4.249-1.el7.elrepo                    elrepo-kernel
kernel-lt-devel.x86_64                        5.4.249-1.el7.elrepo                    elrepo-kernel
kernel-lt-doc.noarch                          5.4.249-1.el7.elrepo                    elrepo-kernel
kernel-lt-headers.x86_64                      5.4.249-1.el7.elrepo                    elrepo-kernel
kernel-lt-tools.x86_64                        5.4.249-1.el7.elrepo                    elrepo-kernel
kernel-lt-tools-libs.x86_64                   5.4.249-1.el7.elrepo                    elrepo-kernel
kernel-lt-tools-libs-devel.x86_64             5.4.249-1.el7.elrepo                    elrepo-kernel
kernel-ml.x86_64                              6.4.1-1.el7.elrepo                      elrepo-kernel
kernel-ml-devel.x86_64                        6.4.1-1.el7.elrepo                      elrepo-kernel
kernel-ml-doc.noarch                          6.4.1-1.el7.elrepo                      elrepo-kernel
kernel-ml-headers.x86_64                      6.4.1-1.el7.elrepo                      elrepo-kernel
kernel-ml-tools.x86_64                        6.4.1-1.el7.elrepo                      elrepo-kernel
kernel-ml-tools-libs.x86_64                   6.4.1-1.el7.elrepo                      elrepo-kernel
kernel-ml-tools-libs-devel.x86_64             6.4.1-1.el7.elrepo                      elrepo-kernel
perf.x86_64                                   5.4.249-1.el7.elrepo                    elrepo-kernel
python-perf.x86_64                            5.4.249-1.el7.elrepo                    elrepo-kernel                                                                    


安装指定的 Kernel 版本:

$ yum install -y kernel-lt-5.4.249-1.el7.elrepo --enablerepo=elrepo-kernel


设置指定的 Kernel 版本:

# 查看系统可用的内核
$ cat /boot/grub2/grub.cfg | grep menuentry
if [ x"${feature_menuentry_id}" = xy ]; then
 menuentry_id_option="--id"
 menuentry_id_option=""
export menuentry_id_option
menuentry 'CentOS Linux (5.4.249-1.el7.elrepo.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-514.26.2.el7.x86_64-advanced-59d9ca7b-4f39-4c0c-9334-c56c182076b5' {
menuentry 'CentOS Linux (3.10.0-514.26.2.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-514.26.2.el7.x86_64-advanced-59d9ca7b-4f39-4c0c-9334-c56c182076b5' {
menuentry 'CentOS Linux (3.10.0-514.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-514.el7.x86_64-advanced-59d9ca7b-4f39-4c0c-9334-c56c182076b5' {
menuentry 'CentOS Linux (0-rescue-963c2c41b08343f7b063dddac6b2e486) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-963c2c41b08343f7b063dddac6b2e486-advanced-59d9ca7b-4f39-4c0c-9334-c56c182076b5' {

# 设置开机新内核启动
$ grub2-set-default "CentOS Linux (5.4.249-1.el7.elrepo.x86_64) 7 (Core)"

# 查看当前内核启动项
$ grub2-editenv list
saved_entry=CentOS Linux (5.4.249-1.el7.elrepo.x86_64) 7 (Core)


重启系统并验证 Kernel 版本:

# 重启系统
$ reboot

# 启动完成查看内核版本是否更新
$ uname -rs
Linux 5.4.249-1.el7.elrepo.x86_64


相关文章

kafka优选副本切换办法

      1. 以topic test为例,假设test的分布为以下状态。Topic:test PartitionCount:3 Replicati...

MySQL运维实战之ProxySQL(9.6)SQL黑名单

利用mysql_query_rules表中的error_msg字段,可以实现SQL黑名单的功能。如果规则设置了error_msg,当SQL语句匹配这条规则时,proxysql会直接将error_msg...

MySQL运维实战之Clone插件(10.2)Clone插件原理

MySQL运维实战之Clone插件(10.2)Clone插件原理

clone插件实现clone操作主要分为几个阶段:1、初始阶段。初始阶段,会开启页面跟踪(Page Tracking)。开启页面跟踪后,修改过的页面的编号会被记录下来。页面的修改可分为两个阶段:首先在...

Kafka报 IO Exception(many open files)

Kafka报 IO Exception(many open files)

1 线上问题kafka报错many open files,查看日志如下截取部分错误信息2 问题分析首先看kafka监控平台的一些监控指标,topic列表中关于topic的信息项如下所示:(1)topi...

k8s Krew 插件使用指南

kubectl Krew 插件使用指南前言:在某些情况下,只是使用 kubectl 命令的时候存在效率比较低、功能不满足的问题,针对这些问题,社区提出了krew插件项目。还有一点是:大部分工程师还是喜...

数仓主流架构简介之一

数仓主流架构简介之一

一、Lambda架构Apache Storm的创建者Nathan Marz于 2011 年开发,旨在解决大规模实时数据处理的挑战。Lambda数据架构提供了一个可扩展、容错且灵活的系统来处理大量数据。...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。