一、升级途径

使用elrepo源进行kernel升级。
elrepo是一个第三方软件源。

elrepo官方网址:http://elrepo.org/tiki/tiki-index.php

二、升级内核步骤

2.1 安装elrepo源

yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
#CentOS 7

yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
#CentOS 8

2.2 导入公钥

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

2.2.1 不导入公钥
若不想导入公钥,可修改elrepo.repo配置文件

gpgcheck=0
#修改gpgcheck为0,不检查即可。

2.3 查看当前可用的kernel列表。

yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
#这里先禁用所有repo源,然后启用“elrepo-kernel”源,接着显示可用列表。

输出如下:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * elrepo-kernel: hkg.mirror.rackspace.com
Available Packages
kernel-lt-devel.x86_64                          5.4.102-1.el7.elrepo                elrepo-kernel
kernel-lt-doc.noarch                            5.4.102-1.el7.elrepo                elrepo-kernel
kernel-lt-headers.x86_64                        5.4.102-1.el7.elrepo                elrepo-kernel
kernel-lt-tools.x86_64                          5.4.102-1.el7.elrepo                elrepo-kernel
kernel-lt-tools-libs.x86_64                     5.4.102-1.el7.elrepo                elrepo-kernel
kernel-lt-tools-libs-devel.x86_64               5.4.102-1.el7.elrepo                elrepo-kernel
kernel-ml.x86_64                                5.11.3-1.el7.elrepo                 elrepo-kernel
kernel-ml-devel.x86_64                          5.11.3-1.el7.elrepo                 elrepo-kernel
kernel-ml-doc.noarch                            5.11.3-1.el7.elrepo                 elrepo-kernel
kernel-ml-headers.x86_64                        5.11.3-1.el7.elrepo                 elrepo-kernel
kernel-ml-tools.x86_64                          5.11.3-1.el7.elrepo                 elrepo-kernel
kernel-ml-tools-libs.x86_64                     5.11.3-1.el7.elrepo                 elrepo-kernel
kernel-ml-tools-libs-devel.x86_64               5.11.3-1.el7.elrepo                 elrepo-kernel
perf.x86_64                                     5.11.3-1.el7.elrepo                 elrepo-kernel
python-perf.x86_64                              5.11.3-1.el7.elrepo                 elrepo-kernel

如上可看到,kernel的版本分为2种。lt为长期支持版,ml为稳定版。

2.4 安装内核

yum --disablerepo="*" --enablerepo=elrepo-kernel install -y kernel-lt.x86_64
#这里选择安装长期支持版lt,平台选择x86_64。

三、修改系统默认启动的内核版本

3.1 查看内核默认启动顺序

awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg

3.2 修改默认启动内核

vi /etc/default/grub
#编辑配置文件

GRUB_DEFAULT=0
#将默认内核设置为0,即为在上一步骤中处于第一位置的内核。

grub2-mkconfig -o /boot/grub2/grub.cfg
#使用grub2-mkconfig命令应用新的grub配置

reboot
#重新启动系统

3.3 查看当前系统内核版本

uname -a
#查看内核版本是否已为最新版本

四、删除旧版本kernel

4.1 查看当前已安装的kernel版本

rpm -qa|grep kernel
#查看已安装kernel

输出如下:
kernel-devel-3.10.0-1160.15.2.el7.x86_64
kernel-3.10.0-1160.el7.x86_64
kernel-lt-5.4.102-1.el7.elrepo.x86_64
kernel-tools-3.10.0-1160.15.2.el7.x86_64
kernel-headers-3.10.0-1160.15.2.el7.x86_64
kernel-3.10.0-1160.15.2.el7.x86_64
kernel-tools-libs-3.10.0-1160.15.2.el7.x86_64

4.2 删除指定旧版kernel

yum remove kernel-3.10.0-1160.el7.x86_64
yum remove kernel-3.10.0-1160.15.2.el7.x86_64
#删除旧版本kernel

kernel-devel-3.10.0-1160.15.2.el7.x86_64
kernel-headers-3.10.0-1160.15.2.el7.x86_64
kernel-tools-3.10.0-1160.15.2.el7.x86_64
kernel-tools-libs-3.10.0-1160.15.2.el7.x86_64
#以上几个虽然是kernel开头,但并不是kernel而是一系列工具和库,无需删除。

4.3 重启系统

reboot
#重启后旧kernel在启动时就消失了

标签: System Management

添加新评论