发布于2026-08-15 阅读(0)
扫一扫,手机访问
Linux终端字体需分图形界面终端模拟器和纯文本控制台分别配置:前者通过终端偏好设置选等宽字体并刷新fontconfig,后者需修改/etc/default/console-setup并运行setupcon,两者机制不同、配置隔离。

Linux 终端字体这件事,并不是改一个配置项就能一把梭地统一搞定。先得分清楚,你面对的到底是「图形界面里的终端模拟器」(比如 GNOME Terminal、xfce4-terminal),还是「纯文本控制台」(也就是按 Ctrl+Alt+F1~F6 切进去看到的那个黑屏界面)。这两类终端走的底层机制完全不是一回事,如果混在一起改,结果往往就是折腾半天也不生效。
这是绝大多数用户实际在用的「终端」,比如 Ubuntu 默认的 GNOME Terminal 或 XFCE 的 xfce4-terminal。它走的是 X/Wayland 图形协议,字体由 GTK/Qt 和 fontconfig 控制。
Custom font,从下拉列表里选一个等宽字体(Monospace、JetBrains Mono、Fira Code 都行)ls 对齐错乱、vim 光标偏移;TTF/OTF 字体装到 ~/.local/share/fonts/ 后,运行 fc-cache -fv 才能在下拉列表里出现ls 的目录名加粗会糊成一团,建议优先选自带 Medium 或 SemiBold 变体的字体这个不走 X/Wayland,用的是内核级 console 字体(.psf/.psfu 格式),setfont 命令只对当前 tty 临时生效,重启就丢。
/etc/default/console-setup:设 FONTFACE="TerminusBold"、FONTSIZE="16x32",然后运行 sudo setupcon 或 sudo dpkg-reconfigure console-setup(Debian/Ubuntu 系)ls /usr/share/consolefonts/ 能看到可用字体,命名含尺寸(如 lat9w-16.psf.gz 中的 16 是高度),别选大于 32 的——小分辨率屏幕会显示不全console-setup,得手动装 kbd 包,再确保 systemd 服务 console-setup.service 已启用showconsolefont 可验证当前加载的字体字形,但输出是二进制图样,肉眼难读;真正效果得切到 tty1(Ctrl+Alt+F1)看常见于中文环境,本质是字体缺失 + 编码未匹配,不是单纯换字体能解决的。
locale,LANG 必须含 zh_CN.UTF-8 或类似 UTF-8 编码;否则即使装了中文字体也 fallback 到 ASCII 字符集unifont 这类 bitmap 字体(如 uni32.psf.gz),且需在 /etc/vconsole.conf 里写 FONT=uni32(systemd 系统)fonts-wqy-microhei 或 fonts-noto-cjk 这类开源中文字体包,fc-list :lang=zh 可查已注册的中文字体gsettings reset org.gnome.Terminal.Legacy.Settings custom-font 清一下旧设置最容易被忽略的点:图形终端和控制台字体配置完全隔离,改了一个不影响另一个;而且控制台字体大小单位是像素高度(如 16x32),图形终端字体大小单位是 pt 或 px,数值不能直接套用。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9