13.1 引导界面和虚拟控制台

TTY 中文控制台

FreeBSD 的新型终端 VT 原生支持 CJK 字符集,只需加载字体即可显示中文。

本文基于 FreeBSD 14.2 RELEASE。

字体格式为 .fnt(不是码表加 PNG 图片,而是二进制字体文件),使用命令切换控制台字体为 test.fnt:

$ vidcontrol -f test.fnt

FreeBSD 基本系统提供了一个工具,可将 bdf 或 hex 格式转换为 fnt 文件:

$ vtfontcvt [ -h 高度 ] [ -v ] [ -w 宽度] [字体路径]
  • 示例:

未加入字体的 tty

技巧

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

设置完成后的 tty

上述命令为临时生效,若需永久生效,应将其加入 /etc/rc.conf 文件:

故障排除与未竟事宜

当前尚不清楚如何手动生成中文字体的 fnt 文件

https://github.com/usonianhorizon/vt-fnt 提供的方法较难理解,可生成 bdf 文件,但会出现文中相同的报错。文中提到的软件 FontForge 提供 Windows 版本,下载地址为 https://fontforge.org/en-US/downloads/windows-dl/

参考文献

调整引导选择界面的时间

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

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

精简启动输出

freebsd boot logo

参考文献:

屏幕保护

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

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)

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

本文测试使用 efi_max_resolution 变量:

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

参考文献

根据 man 页面 BEASTIE.4TH(8),默认有几种 logo 可选:

  • fbsdbw

  • beastie

  • beastiebw

  • orb(14.2 中默认,UEFI 下)

  • orbbw

  • none(无 Logo)

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

重启后效果如下

fbsdbw
beastie
beastiebw
orb
orbbw
none

参考文献

最后更新于

这有帮助吗?