13.1 引导界面和虚拟控制台
TTY 中文控制台
FreeBSD 的新型终端 VT 原生支持 CJK 字符集,只需加载字体即可显示中文。
本文基于 FreeBSD 14.2 RELEASE。
字体格式为 .fnt(不是码表加 PNG 图片,而是二进制字体文件),使用命令切换控制台字体为 test.fnt:
$ vidcontrol -f test.fntFreeBSD 基本系统提供了一个工具,可将 bdf 或 hex 格式转换为 fnt 文件:
$ vtfontcvt [ -h 高度 ] [ -v ] [ -w 宽度] [字体路径]示例:

技巧
若上述链接失效,请访问 https://github.com/FreeBSD-Ask/fnt-fonts 下载字体。

上述命令为临时生效,若需永久生效,应将其加入 /etc/rc.conf 文件:
故障排除与未竟事宜
当前尚不清楚如何手动生成中文字体的 fnt 文件
https://github.com/usonianhorizon/vt-fnt 提供的方法较难理解,可生成 bdf 文件,但会出现文中相同的报错。文中提到的软件 FontForge 提供 Windows 版本,下载地址为 https://fontforge.org/en-US/downloads/windows-dl/
参考文献
rc.conf,此页搜索“allscreens_flags”
Custom cjktty patches,Linux 中文 TTY 内核补丁,作者已停止维护
Internationalizing the Kernel,Linus 言论出处
调整引导选择界面的时间
编辑 /boot/loader.conf 文件,新增条目:
参数说明:2:设置系统启动自动引导延迟为 2 秒
精简启动输出

参考文献:
屏幕保护
在默认情况下,控制台驱动程序在屏幕空闲时不会执行任何特殊处理。如果预计长时间让显示器保持开启并处于空闲状态,应启用某个屏幕保护程序以防止烧屏。
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)
efi_max_resolution(UEFI)或 vbe_max_resolution(BIOS)根据文档 LOADER.CONF(5),这两个变量可接受以下值:
本文测试使用 efi_max_resolution 变量:
将 efi_max_resolution="1080p" 写入 /boot/loader.conf,重启后效果与 gop 方法一致。
参考文献
gop set < mode > being ignored in /boot/loader.conf,
efi_max_resolution方法参考本文How to find the valid values of efi_max_resolution,gop 方法参考本文,里面有个动图有点用
自定义引导加载程序 Logo
根据 man 页面 BEASTIE.4TH(8),默认有几种 logo 可选:
fbsdbwbeastiebeastiebworb(14.2 中默认,UEFI 下)orbbwnone(无 Logo)
以 fbsdbw 为例,在 /boot/loader.conf 写入:
重启后效果如下






参考文献
customize boot loader logo。本文主要来自此处
最后更新于
这有帮助吗?