服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - 如何使用 grubby 更改 RHEL 8 和 9 的默认内核

如何使用 grubby 更改 RHEL 8 和 9 的默认内核

2023-09-01 12:00Linux中国 Linux

通常 Linux 系统会默认引导系统进入最新安装的内核,并保留最新的 3 个 Linux 内核引导条目。 假设你已经执行了 yum update,并且新的内核作为更新的一部分已经安装了。这时,由于这个新内核与应用程序不兼容,它会阻止应用程序启动。 想要暂时解决这个问题,你应该还是引导系统进入旧内核。 在本文中,我们将向您展示如何使用 grubby 工具将旧的内核版本设置为 RHEL 8 和 RHE

如何使用 grubby 更改 RHEL 8 和 9 的默认内核

通常 Linux 系统会默认引导系统进入最新安装的内核,并保留最新的 3 个 Linux 内核引导条目。

假设你已经执行了 yum update,并且新的内核作为更新的一部分已经安装了。这时,由于这个新内核与应用程序不兼容,它会阻止应用程序启动。

想要暂时解决这个问题,你应该还是引导系统进入旧内核。

在本文中,我们将向您展示如何使用 grubby 工具将旧的内核版本设置为 RHEL 8 和 RHEL 9 系统上的默认版本。

grubby 是什么

grubby 是一个命令行工具,用于在多个架构上更新和显示引导加载配置文件的信息。

检查当前引导的内核

你可以使用如下的 uname 命令来检查当前引导/加载的内核。

# uname -r
4.18.0-477.13.1.el8_8.x86_64

列出默认内核

使用 grubby 验证默认内核版本,运行以下命令:

# grubby --default-kernel
/boot/vmlinuz-4.18.0-477.13.1.el8_8.x86_64

要获取当前默认内核的索引号,请运行以下命令:

# grubby --default-index
0

检查已安装的内核

要检查已安装的内核的列表,请运行以下命令:

我们来解释以下的输出信息。最新安装的内核的条目索引为 0,接下来的 较旧的内核 版本将会是 1,第二个更旧的内核版本将会是 2,而 救援内核 的条目索引将会是 3

# grubby --info=ALL | egrep -i 'index|title'
index=0
title="Red Hat Enterprise Linux (4.18.0-477.13.1.el8_8.x86_64) 8.8 (Ootpa)"
index=1
title="Red Hat Enterprise Linux (4.18.0-425.19.2.el8_7.x86_64) 8.7 (Ootpa)"
index=2
title="Red Hat Enterprise Linux (4.18.0-425.13.1.el8_7.x86_64) 8.7 (Ootpa)"
index=3
title="Red Hat Enterprise Linux (0-rescue-13iu76884ec5490puc67j8789s249b0c) 8.2 (Ootpa)"

更改默认内核引导条目

我们可以用两种方式,使用 “内核文件名”,或者使用 “内核条目索引”。我们设置索引号为 1 的 4.18.0-425.19.2.el8_7.x86_64 为默认内核,以此满足应用程序的依赖关系。

语法:

# grubby --set-default [kernel-filename]
# grubby --set-default /boot/vmlinuz-4.18.0-425.19.2.el8_7.x86_64

或者

# grubby --set-default vmlinuz-4.18.0-425.19.2.el8_7.x86_64

使用内核条目索引更改默认的内核引导:

语法:

# grubby --set-default-index=[kernel-entry-index]
# grubby --set-default-index=1

重启系统

重启系统,检查旧内核是否持久更改。

# reboot

或者

# init 6

验证更改

让我们检查一下在上一步中添加的内核是否生效了。好了,按我们的预期使用了较旧的内核 “N-1” 进行引导了。

# uname -r
4.18.0-425.19.2.el8_7.x86_64
# grubby --default-kernel
/boot/vmlinuz-4.18.0-425.19.2.el8_7.x86_64

要检查所有内核的详细信息,请运行以下命令:

# grubby --info=ALL

如何使用 grubby 更改 RHEL 8 和 9 的默认内核

总结

在本教程中,我们展示了如何使用 grubby 工具在 RHEL 8 和 RHEL 9 系统上将旧版本内核设置为默认。

延伸 · 阅读

精彩推荐
  • Linuxvmware 网络配置

    vmware 网络配置

    前几天写了一个vmware的配置的一个案例,主要关于linux host+windows guest的情况,适用于经常跑linux而把windows当成副业的朋友。...

    Linux教程网4712020-04-25
  • LinuxLinux下rar命令详解

    Linux下rar命令详解

    通常rar命令由一个主命令加若干选项(可选)构成,操作文档为操作施加的.rar文件对象,文件或文件列表为对操作文档实现修饰的具体文件或目录(可选)...

    Linux教程网3272020-04-03
  • Linux使用GIT软件备份linux系统上的网页文件

    使用GIT软件备份linux系统上的网页文件

    如何备份linux系统上的网页文件?下面本文介绍使用BUP备份linux系统上的网页文件, 你先要初始化一个空的仓库, 然后备份所有文件.下面我们来看看GIT软件备份...

    linux教程网5982019-10-27
  • LinuxLinux 下安装pip包的方法

    Linux 下安装pip包的方法

    这篇文章主要介绍了Linux 下安装pip包的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...

    Crista3712019-08-28
  • LinuxLinux下删除文件之彻底删除文件(shred)

    Linux下删除文件之彻底删除文件(shred)

    在linux中删除文件与文件夹我们可以直接使用rm就可以删除了,彻底删除文件或文件夹我们可以使用shred命令来完成,下面我给大家介绍介绍 ...

    Linux教程网11692019-11-11
  • LinuxLinux下chkconfig命令详解

    Linux下chkconfig命令详解

    chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接 ...

    linux命令大全8092019-12-27
  • LinuxLinux系统怎么安装FTP和登陆使用?

    Linux系统怎么安装FTP和登陆使用?

    Linux系统怎么安装FTP和登陆使用?FTP无形中出现在我们生活的各个角落。日常生活中的文件上传和下载很多时候就是依靠FTP去实现的。无论是Window还是Linu...

    脚本之家8102019-10-11
  • LinuxWindows 11 让你的硬件过时,使用 Linux 代替吧!

    Windows 11 让你的硬件过时,使用 Linux 代替吧!

    微软希望你为 Windows 11 买新的硬件。你是否应该为 Windows 11 升级你的电脑,或者只是,用 Linux 代替!?...

    Linux中国7972021-08-02