如何在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流上添加/删除内核引导参数/参数和GRUB引导脚本

2024年 3月 20日 58.0k 0

在Fedora 39+、RHEL 9、AlmaLinux 9、Rocky Linux 9和CentOS Stream 9 Linux发行版上,您可以使用grubby程序管理GRUB引导条目。

在本文中,我们将向您展示如何使用GRUBY在Fedora、RHEL、AlmaLinux、Rocky Linux和CentOS Stream上的GRUB引导项中添加/删除内核引导参数。我们还将向您展示如何在Fedora、RHEL、AlmaLinux、Rocky Linux和CentOS Stream上使用GRUBY添加/删除定制的GRUB引导条目,并将特定的GRUB引导条目设置为默认条目。

内容主题:

  1. Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上的所有GRUBboot
  2. 在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上显示特定的GRUB引导项
  3. 将新的内核引导参数/参数添加到Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上的所有GRUB引导条目
  4. 在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流上将新的内核引导参数/参数添加到特定的GRUB引导条目
  5. 从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流上的所有GRUBBoot NTFS中删除内核引导参数/参数
  6. 从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上的特定GRUB引导项中删除内核引导参数/参数
  7. 在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上添加带有自定义内核参数/参数的GRUB引导项
  8. 将GRUB引导项设置为Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上的默认项
  9. 从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流中删除一个GRUB引导条目
  10. 结论

Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上的所有GRUBboot

要列出Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流系统的所有GRUB引导项,请按如下方式运行grubby:

$sudo grubby——info = ALL

如您所见,列出了CentOS Stream 9系统的所有GRUB引导条目(X2)。

每个引导条目都有:

  1. 索引号
  2. 完整的内核路径
  3. 内核引导参数也称为内核参数
  4. 根文件系统的完整路径
  5. “initrd”文件的完整路径
  6. GRUB引导条目的标题
  7. 此引导条目的配置文件的ID(可在“/ot/loader/entry/”目录中找到)

在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上显示特定的GRUB引导项

您可以在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream系统上使用GRUBY显示特定GRUB引导条目的信息。

若要显示默认GRUB引导项的信息,请运行以下命令:

$sudo grubby——info =默认

应该会显示默认的GRUB引导条目。

您还可以在特定索引处显示关于GRUB引导项的信息。索引号从0开始。

若要显示第一个GRUB引导项(索引0处)的信息,请运行以下命令:

$sudo grubby——info = 0

同样,您可以使用以下命令显示第二个GRUB引导条目(索引1处)的信息,依此类推:

$sudo grubby——info = 1

将新的内核引导参数/参数添加到Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上的所有GRUB引导条目

要在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream系统的所有GRUB引导条目中添加一个内核引导参数/参数(比如"nomodeset"),请运行以下命令:

$sudo gRUBY--UPDATE-KERNEL=all--args=‘noodeset’

要向Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream系统的所有GRUB引导条目添加多个内核引导参数/参数(例如,“onomodeset”和“nouveau.Blacklist=1”),请使用空格分隔内核引导参数/参数,如下所示:

$sudo grubby——update—core = ALL——args ='nomodeset nouveau. blacklist = 1 '

如您所见,内核引导参数/参数"nomodeset"和"nouveau.blacklist = 1"被添加到所有的GRUB引导项中。

$sudo grubby——info = ALL

在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流上将新的内核引导参数/参数添加到特定的GRUB引导条目

要向Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream系统的默认GRUB引导项添加内核引导参数/变元(比如“selinux=0”),请运行以下命令:

$sudo grubby——update—core =默认——args ='selinux = 0 '

要将多个内核引导参数/参数(例如"selinux = 0"和"ipv6.disable = 1")添加到Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流系统的默认GRUB引导项中,请使用空格分隔内核引导参数/参数,如下所示:

$sudo gRUBY--UPDATE-KERNEL=DEFAULT--args=‘selinux=0 ipv6.able=1’

同样,您可以将内核引导参数/参数添加到特定索引(例如索引0)的GRUB引导条目,如下所示:

$sudo grubby——update—core = 0——args ='selinux = 0 ipv6.disable = 1 '

正如您所看到的,内核引导参数/参数"selinux = 0"和"ipv6.disable = 1"只添加到默认(索引0)的GRUB引导项中。

$sudo grubby——info = ALL

从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流上的所有GRUBBoot NTFS中删除内核引导参数/参数

要从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流系统的所有GRUB引导条目中删除内核引导参数/参数(比如"nomodeset"),请运行以下命令:

$sudo grubby——update—core = ALL——remove—args ='nomodeset '

要从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream系统的所有GRUB引导条目中删除多个内核引导参数/参数(例如“onomodeset”和“nouveau.Blacklist=1”),请使用空格分隔内核引导参数/参数,如下所示:

$sudo grubby——update—core = ALL——remove—args ='nomodeset nouveau. blacklist = 1 '

正如您所看到的,内核引导参数/参数"nomodeset"和"nouveau.blacklist = 1"从所有的GRUB引导条目中删除。

$sudo grubby——info = ALL

从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上的特定GRUB引导项中删除内核引导参数/参数

要从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流系统的默认GRUB引导项中删除内核引导参数/参数(假设"selinux = 0"),请运行以下命令:

$sudo grubby——update—core = Default——remove—args ='selinux = 0 '

要从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流系统的默认GRUB引导条目中删除多个内核引导参数/参数(例如"selinux = 0"和"ipv6.disable = 1"),请使用空格分隔内核引导参数/参数,如下所示:

$sudo grubby——update—core =默认——remove—args ='selinux = 0 ipv6.disable = 1 '

同样,您可以从特定索引处(例如索引0)的GRUB引导项中删除内核引导参数/参数,如下所示:

$sudo grubby——update—core = 0——remove—args ='selinux = 0 ipv6.disable = 1 '

如您所见,内核引导参数/参数“selinux=0”和“ipv6.able=1”仅从默认的(索引0)GRUB引导条目中删除。

$sudo grubby——info =默认

在Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上添加带有自定义内核参数/参数的GRUB引导项

有时,最好创建默认的GRUB引导条目的副本,并修改复制的GRUB引导条目上的内核参数/参数,而不是破坏出厂默认的GRUB引导条目。

要创建默认的GRUB引导项的副本,您需要知道默认的GRUB引导项的完整内核路径和"initrd"路径。

若要查找完整的内核路径和默认GRUB引导项的"initrd"路径,请运行以下命令:

$sudo grubby——info =默认

应该显示默认的GRUB引导条目的完整内核路径[1]和"initrd"路径[2]。请注意这些信息。

若要使用在前面命令的输出中找到的内核路径和"initrd"路径创建默认GRUB引导项的副本,请运行以下命令:

$sudo grubby——copy—default

——add—core ="/boot/vmlinuz—5.14.0—391.el9.x86_64"

——initrd ="/boot/initramfs—5.14.0—391.el9.x86_64.img $tuned_initrd"

——title ="$(cat/etc/redhat—release)—禁用SELinux—$(uname—r)"

注意:请确保将内核路径和“initrd”路径分别替换为“-add-core=”和“-initrd=”部分中的路径。此外,在“-title=”部分中为GRUB引导条目使用描述性标题。

注:在"—title"中,"$(cat/etc/redhat—release)"被替换为操作系统和版本名称(即CentOS Stream 9),"$(uname—r)"被替换为当前使用的Linux内核的版本号(即5.14.0—391.el9.x86_64)。

应该创建一个新的GRUB引导条目。

如您所见,在索引0 [2]处创建了一个新的GRUB引导条目[1]。

$sudo grubby——info = ALL

您可以使用grubby "—args"选项添加新的内核参数/参数,并使用"—remove—args"选项从新创建的GRUB引导条目(索引0处)移除内核参数/参数。

例如,要添加"selinux = 0"内核参数/参数,并从新创建的GRUB引导项(索引0处)中删除"quiet"内核参数/参数,请按如下方式运行grubby命令:

$sudo grubby——update—core = 0——args ="selinux = 0"——remove—args ="安静"

正如您所看到的,"selinux = 0"内核参数/参数被添加,"quiet"内核参数/参数被从新创建的GRUB引导条目(索引0处)中删除。

$sudo grubby——info = 0

将GRUB引导项设置为Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream上的默认项

创建自定义GRUB引导条目后,您可能希望将其设置为计算机/服务器的默认GRUB引导条目,以便您的计算机/服务器在默认情况下使用它进行引导。

您可以使用以下命令找到默认的GRUB引导条目的索引:

$sudo grubby——default—index

如您所见,默认索引为1。

我们添加的自定义GRUB引导项的索引为0。

若要将自定义GRUB引导项设置为默认值,请运行以下命令:

$sudo gRubby--set-default-index=0

索引0处的GRUB引导条目应设置为默认引导条目。

正如您所看到的,自定义的GRUB引导项被设置为默认引导项。

自定义的GRUB引导项是从GRUB引导加载程序中自动选择的。

如您所见,定制GRUB引导条目包含我们配置的所有定制内核参数/参数。

从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS流中删除一个GRUB引导条目

您也可以使用GRUBY从Fedora/RHEL/AlmaLinux/Rocky Linux/CentOS Stream系统中删除GRUB引导项。

我们在索引0 [1]处创建了一个新的GRUBboot entry [1],以演示使用grubby移除GRUBboot entry的过程。

若要删除索引0处的GRUB引导项,请运行以下命令:

$sudo grubby——remove—core = 0

如您所见,删除了GRUB引导项,并重新调整了索引。

结论

在本文中,我们向您展示了如何使用grubby列出GRUB引导项。我们还向您展示了如何使用grubby将内核引导参数/参数添加到GRUB引导项中,以及如何使用grubby从GRUB引导项中移除内核引导参数/参数。我们还向您展示了如何使用grubby添加/删除自定义的GRUB引导项。最后,我们向您展示了如何使用grubby将一个GRUB引导项设置为默认值。本文中展示的过程应该适用于Fedora、RHEL、AlmaLinux、Rocky Linux和CentOS Stream操作系统。

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论