Linux系统之升级内核版本方法

这篇具有很好参考价值的文章主要介绍了Linux系统之升级内核版本方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、检查本地系统环境

1.检查系统版本

[root@jeven ~]# cat /etc/os-release 
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"


2.检查系统内核版本

[root@jeven ~]# uname -r 
3.10.0-957.el7.x86_64


二、小版本升级内核

1.列出yum仓库的内核包版本

确保yum仓库的正常,本次实践用的是阿里的镜像源。

[root@jeven yum.repos.d]# yum list kernel
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * epel: mirrors.bfsu.edu.cn
Installed Packages
kernel.x86_64                                                              3.10.0-957.el7                                                                    @anaconda
Available Packages
kernel.x86_64                                                              3.10.0-1160.81.1.el7                                                              updates

2.升级内核

直接更新内核版本,此方法适用于更新内核补丁。

[root@jeven yum.repos.d]# yum update -y kernel
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                                                                                                           | 8.5 kB  00:00:00     
 * epel: mirrors.bfsu.edu.cn
base                                                                                                                                           | 3.6 kB  00:00:00     
docker-ce-stable                                                                                                                               | 3.5 kB  00:00:00     
epel                                                                                                                                           | 4.7 kB  00:00:00     
extras                                                                                                                                         | 2.9 kB  00:00:00     
updates                                                                                                                                        | 2.9 kB  00:00:00     
(1/3): epel/x86_64/updateinfo                                                                                                                  | 1.0 MB  00:00:00     
(2/3): epel/x86_64/primary_db                                                                                                                  | 7.0 MB  00:00:01     
(3/3): updates/7/x86_64/primary_db                                                                                                             |  19 MB  00:00:09     
Resolving Dependencies
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-1160.83.1.el7 will be installed
--> Processing Dependency: linux-firmware >= 20190429-72 for package: kernel-3.10.0-1160.83.1.el7.x86_64
--> Running transaction check
---> Package linux-firmware.noarch 0:20180911-69.git85c5d90.el7 will be updated
---> Package linux-firmware.noarch 0:20200421-80.git78c0348.el7_9 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================================================================================
 Package                                 Arch                            Version                                               Repository                        Size
======================================================================================================================================================================
Installing:
 kernel                                  x86_64                          3.10.0-1160.83.1.el7                                  updates                           52 M
Updating for dependencies:
 linux-firmware                          noarch                          20200421-80.git78c0348.el7_9                          updates                           80 M

Transaction Summary
======================================================================================================================================================================
Install  1 Package
Upgrade             ( 1 Dependent package)

Total download size: 132 M
Downloading packages:
No Presto metadata available for updates
(1/2): kernel-3.10.0-1160.83.1.el7.x86_64.rpm                                                                                                  |  52 MB  00:00:31     
(2/2): linux-firmware-20200421-80.git78c0348.el7_9.noarch.rpm                                                                                  |  80 MB  00:00:48     
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                 2.7 MB/s | 132 MB  00:00:48     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Updating   : linux-firmware-20200421-80.git78c0348.el7_9.noarch                                                                                                 1/3 
  Installing : kernel-3.10.0-1160.83.1.el7.x86_64                                                                                                                 2/3 
  Cleanup    : linux-firmware-20180911-69.git85c5d90.el7.noarch                                                                                                   3/3 
  Verifying  : kernel-3.10.0-1160.83.1.el7.x86_64                                                                                                                 1/3 
  Verifying  : linux-firmware-20200421-80.git78c0348.el7_9.noarch                                                                                                 2/3 
  Verifying  : linux-firmware-20180911-69.git85c5d90.el7.noarch                                                                                                   3/3 

Installed:
  kernel.x86_64 0:3.10.0-1160.83.1.el7                                                                                                                                

Dependency Updated:
  linux-firmware.noarch 0:20200421-80.git78c0348.el7_9                                                                                                                

Complete!



3.重启并检查内核版本

  • 重启服务器
reboot
  • 检查内核版本

重启完成,发现内核版本已经升级为【3.10.0-1160.83.1.el7.x86_64】

[root@jeven ~]# uname -r 
3.10.0-1160.83.1.el7.x86_64


三、大版本升级内核

1.导入公钥

ELRepo是一个为Linux提供驱动程序和内核映像的存储库,这里的内核大版本升级方案就是采用ELRepo提供的内核通道。

[root@jeven ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
[root@jeven ~]#

2.下载并安装elrepo仓库

ELRepo内核下载地址:https://elrepo.org/linux/kernel/el7/x86_64/RPMS/,如果服务器不能联网,可离线下载。

[root@jeven ~]# yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
Loaded plugins: fastestmirror, langpacks
elrepo-release-7.el7.elrepo.noarch.rpm                                                                                                         | 8.7 kB  00:00:00     
Examining /var/tmp/yum-root-RRC6Uo/elrepo-release-7.el7.elrepo.noarch.rpm: elrepo-release-7.0-6.el7.elrepo.noarch
Marking /var/tmp/yum-root-RRC6Uo/elrepo-release-7.el7.elrepo.noarch.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package elrepo-release.noarch 0:7.0-6.el7.elrepo will be installed
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================================================================================
 Package                             Arch                        Version                               Repository                                                Size
======================================================================================================================================================================
Installing:
 elrepo-release                      noarch                      7.0-6.el7.elrepo                      /elrepo-release-7.el7.elrepo.noarch                      5.0 k

Transaction Summary
======================================================================================================================================================================
Install  1 Package

Total size: 5.0 k
Installed size: 5.0 k
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : elrepo-release-7.0-6.el7.elrepo.noarch                                                                                                             1/1 
  Verifying  : elrepo-release-7.0-6.el7.elrepo.noarch                                                                                                             1/1 

Installed:
  elrepo-release.noarch 0:7.0-6.el7.elrepo                                                                                                                            

Complete!

3.载入elrepo-kernel元数据

[root@jeven ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel repolist
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
elrepo-kernel                                                                                                                                  | 3.0 kB  00:00:00     
elrepo-kernel/primary_db                                                                                                                       | 2.1 MB  00:00:00     
repo id                                                 repo name                                                                                               status
elrepo-kernel                                           ELRepo.org Community Enterprise Linux Kernel Repository - el7                                           34
repolist: 34


4.列出rpm包

列出elrepo-kernel的rpm包

[root@jeven ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel list kernel*
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
Installed Packages
kernel.x86_64                                                                      3.10.0-957.el7                                                        @anaconda    
kernel.x86_64                                                                      3.10.0-1160.83.1.el7                                                  @updates     
kernel-tools.x86_64                                                                3.10.0-957.el7                                                        @anaconda    
kernel-tools-libs.x86_64                                                           3.10.0-957.el7                                                        @anaconda    
Available Packages
kernel-lt.x86_64                                                                   5.4.230-1.el7.elrepo                                                  elrepo-kernel
kernel-lt-devel.x86_64                                                             5.4.230-1.el7.elrepo                                                  elrepo-kernel
kernel-lt-doc.noarch                                                               5.4.230-1.el7.elrepo                                                  elrepo-kernel
kernel-lt-headers.x86_64                                                           5.4.230-1.el7.elrepo                                                  elrepo-kernel
kernel-lt-tools.x86_64                                                             5.4.230-1.el7.elrepo                                                  elrepo-kernel
kernel-lt-tools-libs.x86_64                                                        5.4.230-1.el7.elrepo                                                  elrepo-kernel
kernel-lt-tools-libs-devel.x86_64                                                  5.4.230-1.el7.elrepo                                                  elrepo-kernel
kernel-ml.x86_64                                                                   6.1.8-1.el7.elrepo                                                    elrepo-kernel
kernel-ml-devel.x86_64                                                             6.1.8-1.el7.elrepo                                                    elrepo-kernel
kernel-ml-doc.noarch                                                               6.1.8-1.el7.elrepo                                                    elrepo-kernel
kernel-ml-headers.x86_64                                                           6.1.8-1.el7.elrepo                                                    elrepo-kernel
kernel-ml-tools.x86_64                                                             6.1.8-1.el7.elrepo                                                    elrepo-kernel
kernel-ml-tools-libs.x86_64                                                        6.1.8-1.el7.elrepo                                                    elrepo-kernel
kernel-ml-tools-libs-devel.x86_64                                                  6.1.8-1.el7.elrepo                                                    elrepo-kerne

5.安装最新版本kernel

[root@jeven ~]# yum --disablerepo=\* --enablerepo=elrepo-kernel install -y kernel-ml.x86_64
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * elrepo-kernel: mirrors.tuna.tsinghua.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package kernel-ml.x86_64 0:6.1.8-1.el7.elrepo will be installed
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================================================================================
 Package                              Arch                              Version                                        Repository                                Size
======================================================================================================================================================================
Installing:
 kernel-ml                            x86_64                            6.1.8-1.el7.elrepo                             elrepo-kernel                             60 M

Transaction Summary
======================================================================================================================================================================
Install  1 Package

Total download size: 60 M
Installed size: 284 M
Downloading packages:
kernel-ml-6.1.8-1.el7.elrepo.x86_64.rpm                                                                                                        |  60 MB  00:00:02     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : kernel-ml-6.1.8-1.el7.elrepo.x86_64                                                                                                                1/1 
  Verifying  : kernel-ml-6.1.8-1.el7.elrepo.x86_64                                                                                                                1/1 

Installed:
  kernel-ml.x86_64 0:6.1.8-1.el7.elrepo                                                                                                                               

Complete!


6.查看内核是否载入到grub2

查看系统上的所有可用内核

[root@jeven ~]# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (6.1.8-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.83.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-626024fee7b34ca3acd67183d6f1ca99) 7 (Core)


7.设置新的内核为grub2的默认版本

  • 通过 grub2-set-default命令设置默认启动版本

[root@jeven ~]# grub2-set-default 0
[root@jeven ~]# 

  • 通过编辑 /etc/default/grub 文件设置默认启动版本
[root@jeven ~]# cat /etc/default/grub 
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"


  • 生成 grub 配置文件并重启
[root@jeven ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.1.8-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-6.1.8-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-1160.83.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-1160.83.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-957.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-626024fee7b34ca3acd67183d6f1ca99
Found initrd image: /boot/initramfs-0-rescue-626024fee7b34ca3acd67183d6f1ca99.img
done

  • 重启
reboot

8.检查重启后的系统内核版本

重启系统后,发现系统内核已经成功升级。文章来源地址https://www.toymoban.com/news/detail-463727.html

[root@jeven ~]# uname -r 
6.1.8-1.el7.elrepo.x86_64

到了这里,关于Linux系统之升级内核版本方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux:查看服务器信息,CPU、内存、系统版本、内核版本等

    还是最近工作的总结,在做一些性能验证,这就需要要根据服务器的配置综合考虑来做进一步的结论论证,废话不多说 第一种方式 第二种方式 个人偏推崇第一种方式吧,能够更明显的看到版本和一些详细信息 第一种方式 这个命令适用于所有的Linux发行版,包括Redhat、SuSE、

    2024年01月19日
    浏览(57)
  • linux系统docker版本升级或安装

    最好先将镜像导出保存,以免升级后丢失或者无法使用 如有正在运行的容器,先停止 关闭docker服务 查看已经安装的docker 将其卸载掉 确定已经安装curl命令,没有安装,则运行 运行命令安装 安装完成后会有提醒 意思是: 当要以非root用户可以直接运行docker时,需要执行 sud

    2024年04月12日
    浏览(27)
  • 升级 Linux 系统中的 Python 版本

    升级 Linux 系统中的 Python 版本 Python 是一种非常流行的编程语言,广泛应用于各种领域,包括 Web 开发、数据分析等。而对于 Linux 系统来说,Python 更是一个必须的组件,在系统运行和管理中都扮演了重要的角色。但是默认情况下,Linux 发行版中自带的 Python 版本可能比较老旧

    2024年02月15日
    浏览(26)
  • ubuntu20.04安装升级内核版本

    https://blog.csdn.net/inthat/article/details/121682317 下载ubuntu-mainline-kernel脚本 将脚本放在可执行路径中 安装指定内核版本 或安装最新内核版本 查看最新内核版本 安装最新版本 如果想要 卸载 安装的最新版本,运行 重启后查看当前内核版本 注意 :如果更换内核后无法开机,请在gr

    2024年02月07日
    浏览(44)
  • linux系统将OpenSSH升级到最高版本

    公司安全扫描到主机的OpenSSH安全漏洞,由于是虚拟机只能由自己修复,很多OpenSSH的漏洞厂商都没有提供补丁,只能通过禁用scp或者端口的方式临时解决,但是后面使用就不方便了,而且也不安全,所以直接将OpenSSH升级到现在的最高版本openssh-9.3p2,ssl升级到1.1.1。 升级OpenS

    2024年02月15日
    浏览(37)
  • Android升级WebView浏览器内核版本

    使用 AOSP 项目编译的 Android 系统,会发现在部分 APP 使用系统自带的浏览器内核来加载网页时会出现报错,加载不出网页的情况,其实这是由于 WebView 自带的 浏览器内核版本太旧 所导致的,只要更新成比较新的浏览器内核版本就行了。 一、环境准备 (1) Android系统源码编译

    2024年02月04日
    浏览(52)
  • linux系统升级/更新OpenSSL版本操作流程记录

    问题描述:有时 OpenSSL 版本过老升级,或者需要更新 OpenSSL 版本 我的输入后版本信息为:OpenSSL 1.1.1g FIPS 21 Apr 2020 ,可以看到是一年前更新版本,是有些老。 登录 https://www.openssl.org/ 官网后,找到需要的版本 我这里选择 3.1 版本,进入后如下图: 我的输入后版本信息为:Op

    2024年02月07日
    浏览(34)
  • Linux操作系统升级低版本的OpenSSH到9.3的高版本

    OpenSSH 9.3之前的版本存在各种各样的安全漏洞,为此,我们需要将OpenSSH升级到最新的9.3的版本。 执行:ssh -V,我们可以查看当前的openssh版本  为了避免升级过程中出现意外而导致服务器无法正常使用,建议操作前先对服务器进行快照备份!!! 1. 备份原有pam.d下的sshd文件

    2024年02月07日
    浏览(37)
  • linux|操作系统|centos7物理机安装网卡驱动8188gu(内核升级,firmware固件,USB设备管理,module管理)

    目前服务器领域centos7基本是主流的操作系统,而linux相对于Windows来说,软硬件方面的支持是差很多的,在硬件方面来说,以一个免驱的网卡为例,window xp可能不会自动识别到,但Windows10基本都会自动识别到,简简单单的即插即用。根本原因在Windows随着版本的升级,内置的各

    2024年01月20日
    浏览(69)
  • Jupyter-notebook升级内核至Python3.9版本以上

      目录 1、用管理员身份打开Anaconda Prompt 2、Install 3、Activate 4、pywin32_postinstall.py -install  5、打开 6、问题 6.1、Jupyter-notebook默认文件夹位置(Home) 6.2、再次打开3.9版本需要重复操作5、打开 因为调用matplotlib库时出现版本不兼容的问题,我想将Python版本升级到3.9以上,搞了一下午

    2024年02月05日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包