0%

grub文件

文件作用

/etc/default/grub 是一个配置文件,通常用于配置 GRUB (Grand Unified Bootloader) 引导管理器的默认设置。GRUB 是一个用于多操作系统引导的引导管理器,它允许您选择在启动计算机时要加载的操作系统或内核

示例文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 这一行设置了引导菜单的超时时间,单位是秒。在这里,超时时间设置为5秒,意味着引导菜单将在启动时显示5秒,然后自动选择默认的启动项。
GRUB_TIMEOUT=5
# 这一行用于设置GRUB菜单的分发者标签。它使用sed命令从/etc/system-release文件中提取系统的发行版信息,并将其设置为分发者标签。
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
# 这一行设置了默认的引导项。saved 表示使用上一次选择的引导项作为默认项。
GRUB_DEFAULT=saved
# 这一行禁用了GRUB的子菜单特性,将所有引导项都显示在主菜单中,而不是分成子菜单。
GRUB_DISABLE_SUBMENU=true
# 这一行设置GRUB的终端类型,指定了在控制台和串口上显示GRUB的界面。
GRUB_TERMINAL="console serial"
# 这一行指定了GRUB的输出终端,同样是在控制台和串口上显示。
GRUB_TERMINAL_OUTPUT="serial console"
# 这一行设置了Linux内核的引导参数。它包括了一系列的内核启动选项,用于配置各种系统和设备参数,例如内核控制台、内核错误处理、网卡命名等。
GRUB_CMDLINE_LINUX="crashkernel=auto console=ttyS0,115200 console=tty0 panic=5 net.ifnames=0 biosdevname=0 intel_idle.max_cstate=1 intel_pstate=disable"
# 这一行禁用了GRUB菜单中的恢复模式选项。
GRUB_DISABLE_RECOVERY="true"
# 这一行设置了串口终端的参数,包括波特率、数据位、奇偶校验等。
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"
# 这一行启用了 BootLoader Specification (BLS) 配置,用于支持高级的启动配置和管理功能。
GRUB_ENABLE_BLSCFG=true

一般修改/etc/default/grub文件中的内容后,需要执行以下命令重新生成系统启动引导配置文件

1
grub2-mkconfig -o /boot/grub2/grub.cfg

官方提示,一般不建议手动修改/boot/grub2/grub.cfg文件!!!

扩展延伸

在处理udev脚本的时,IMPORT{类型}可导入项

1
2
3
4
5
6
...
# 从内核命令行导入变量 "nompath" 的值。
IMPORT{cmdline}="nompath"
# 如果 "nompath" 变量的值不为空,则跳转到标签 "end_mpath"
ENV{nompath}=="?*", GOTO="end_mpath"
...

上面脚本中,cmdline指的就是GRUB_CMDLINE_LINUX导入的值。

reference

[1] https://blog.csdn.net/owlcity123/article/details/104927871

[2] https://www.jinbuguo.com/systemd/udev.html

[3] https://www.cnblogs.com/jiftle/p/16178197.html

小主,路过打个赏再走呗~