13.1 启动引导器及配置文件(loader.conf)

loader.conf 的功能定位与文件结构

根据 loader.conf(5)arrow-up-right 所述,loader.conf 文件包含了关于系统引导过程的配置信息。通过 loader.conf,可以指定要启动的内核、传递给内核的参数以及需要加载的附加模块;通常还可以设置 loader(8) 中所述的一切变量。

loader.conf(5) 相关文件结构如下:

/
└── boot/ 操作系统引导过程中使用的程序和配置文件
     ├── loader.conf 用户定义设置
     ├── loader.conf.lua 使用 Lua 编写的用户定义设置(默认不存在)
     ├── loader.conf.d/ 用户定义设置的子目录(默认为空)
         ├── *.conf 拆分成多个文件的用户定义设置(默认不存在)
         └── *.lua 使用 Lua 编写并拆分成多个文件的用户定义设置(默认不存在)
     ├── loader.conf.local 机器特定设置,可覆盖其它配置文件中的设置(默认不存在)
     └── defaults/ 存放默认引导配置文件
          └── loader.conf 默认设置文件(请勿直接修改),参见 loader.conf(5)

loader.conf:系统启动配置(写入此处的配置比 rc.conf 更早生效,但可能会妨碍启动),位于 /boot/loader.conf,请参考 loader.confarrow-up-right

技巧

不建议直接修改 /boot/defaults/loader.conf,如需自定义配置,应使用 /boot/loader.conf/boot/loader.conf.local 进行本地配置扩展,其中 /boot/loader.conf.local 优先级最高,用于机器特定设置。

ZFS 标准安装场景下的 loader.conf 配置内容

/boot/loader.conf 文件内容如下(15.0-RELEASE):

需要注意的是,该文件是由 bsdinstall(8) 在安装过程中写入的。

usr.sbin/bsdinstall/scripts/zfsbootarrow-up-right 将分别写入 kern.geom.label.disk_ident.enable="0"kern.geom.label.gptid.enable="0"zfs_enable="YES" 这三行。因此在使用 ZFS 标准安装方案的系统中,这三行即是 /boot/loader.conf 的全部内容。

默认配置文件的内容结构与说明

该文件在源代码中的位置是 stand/defaults/loader.confarrow-up-right

来看看文件内容(版本 loader.conf.5: "console" setting does not document multi-value possiblityarrow-up-right):

调整引导选择界面的时间

引导选择界面等待时间的配置方法

本小节将介绍如何调整引导选择界面的等待时间。

编辑 /boot/loader.conf 文件,新增条目:

参数说明:2:设置系统启动自动引导延迟为 2 秒

启动输出信息精简化配置

本小节将介绍如何精简系统启动输出信息,使启动过程更加简洁。

如图 13-1 所示,设置后可看到 FreeBSD 启动 Logo。

freebsd boot logo

图 13-1 FreeBSD 启动 Logo

参考文献:

控制台屏幕保护程序的配置与应用

在默认情况下,控制台驱动程序在屏幕空闲时不会执行任何特殊处理。如果预计长时间让显示器保持开启并处于空闲状态,应启用某个屏幕保护程序以防止烧屏。

bsdconfig

本小节将介绍如何通过 bsdconfig 工具配置屏幕保护程序。

输出结果如下图:

菜单
解释

1 None Disable the screensaver

1 无 禁用屏幕保护程序

2 Blank Blank screen

2 空白 显示空白屏幕

3 Beastie "BSD Daemon" animated screen saver (graphics)

3 Beastie "BSD Daemon" 动画屏幕保护程序(图形)

4 Daemon "BSD Daemon" animated screen saver (text)

4 Daemon "BSD Daemon" 动画屏幕保护程序(文字)

5 Dragon Dragon screensaver (graphics)

5 龙 动画屏幕保护程序(图形)

6 Fade Fade out effect screen saver

6 淡出 屏幕保护程序淡出效果

7 Fire Flames effect screen saver

7 火焰 火焰效果屏幕保护程序

8 Green "Green" power saving mode (if supported by monitor)

8 绿色“绿色”省电模式(如果显示器支持)

9 Logo FreeBSD "logo" animated screen saver (graphics)

9 标志 FreeBSD“logo”动画屏幕保护程序(图形)

a Rain Rain drops screen saver

a 雨滴 雨滴屏幕保护程序

b Snake Draw a FreeBSD "snake" on your screen

b 蛇 在屏幕上绘制 FreeBSD“蛇”

c Star A "twinkling stars" effect

c 星星 闪烁星星效果

d Warp A "stars warping" effect

d 扭曲 星星扭曲效果

Timeout Set the screen saver timeout interval

超时 设置屏幕保护程序超时时间

选择屏保图片:主菜单中的 7 Console——> 5 Saver Configure the screen saver——> 此处选择 3 Beastie "BSD Daemon" animated screen saver (graphics)

设定屏幕超时时间:主菜单中的 7 Console——> 5 Saver Configure the screen saver——> Timeout Set the screen saver timeout interval,单位是秒。

手动写入

本小节将介绍如何通过手动编辑配置文件来设置屏幕保护程序。

编辑 /etc/rc.conf 文件,添加以下配置:

可选择的屏幕保护图片如下:

调整引导界面和 TTY 分辨率

修改“gop”(通用方法)

在出现 FreeBSD 菜单时,按 ESC 键退出引导,出现提示符 OK。输入 gop list 可查看所有支持的分辨率列表:

此处选择 mode 0 进行效果测试:

效果立即显示。

确认效果合适后,继续引导:

该命令表示操作确认或进入菜单界面。

将该配置写入 /boot/loader.conf 文件,设置 GOP 模式为 0:

efi_max_resolution(UEFI)或 vbe_max_resolution(BIOS)

本小节将介绍如何通过配置文件设置 UEFI 或 BIOS 下的分辨率。

根据文档 LOADER.CONF(5)arrow-up-right,这两个变量可接受以下值:

本文测试使用 efi_max_resolution 变量:

efi_max_resolution="1080p" 写入 /boot/loader.conf,重启后效果与 gop 方法一致。

参考文献

本小节将介绍如何自定义引导加载程序的 Logo,以个性化系统启动界面。

根据 man 页面 BEASTIE.4TH(8)arrow-up-right,默认有几种 Logo 可选:

  • fbsdbw

  • beastie

  • beastiebw

  • orb(14.2 中默认,UEFI 下)

  • orbbw

  • none(无 Logo)

fbsdbw 为例,在 /boot/loader.conf 写入:

重启后效果如下:

fbsdbw
beastie
beastiebw
orb
orbbw
none

参考文献

最后更新于