我尽量保持内心的平静,但总有一些事情困扰着我,比如控制台字体太小了。记住我的话,朋友们,有一天你的眼睛会退化,你将无法再阅读你编码的那些小字体,到那时你会后悔的。幸运的是,Linux顽固分子可以更改控制台字体。按照Linux的一贯尿,千变万化的Linux环境让这个问题变得不那么简单明了,而且Linux上也没有字体管理之类的东西,这让我们很容易搞糊涂。在本文中,我将向您展示我发现的更改字体的最简单方法。Linux控制台到底是什么?首先让我们澄清一下我们在说什么。当我提到Linux控制台时,我指的是TTY1-6,即您从图形环境中使用Ctrl-Alt-F1到F6切换到的虚拟终端。按Ctrl+Alt+F7将切换回图形环境。(不过,这些热键不再通用,你的Linux发行版可能有不同的keymap。你的TTY数量也可能不同,你的图形环境session也可能不是F7。比如Fedora默认的图形session是F2,它只是在F1上有一个额外的终端。)我认为同时拥有X会话和终端会话非常酷。Linux控制台是内核的一部分,不在X会话中运行。它与您在没有图形环境的无头服务器中使用的控制台相同。我将图形会话中的X终端称为终端,我将控制台和X终端都称为终端仿真器。但这还不是全部。Linux终端自早期的ANSI时代以来已经取得了长足的进步,多亏了Linux帧缓冲区,它现在支持Unicode并对图形提供了一些有限的支持。并且控制台下运行着很多多媒体应用程序,我们会在以后的文章中提到。控制台屏幕截图获取控制台屏幕截图的最简单方法是让控制台在虚拟机中运行。然后您就可以在主机系统上使用您喜欢的屏幕捕获软件进行捕获。但是使用fbcat和fbgrab你也可以直接在控制台上截屏。fbcat将创建便携式像素映射格式(PPM)图像;这是一种高度可移植的未压缩图像格式,可以在所有操作系统上读取,尽管您可以将其转换为任何其他格式。fbgrab是fbcat生成PNG文件的包装器脚本。许多人编写了多个版本的fbgrab。每个版本都有有限的选项,只能创建全屏捕获。fbcat的执行需要root权限,其输出需要重定向到一个文件中。您不需要指定文件扩展名,只需指定文件名:$sudofbcat>Pictures/myfile在GIMP中裁剪后,您会得到图1。左边距。如果有读者知道如何实现,请在留言区告诉我。fbgrab还有一些选项,你可以通过manfbgrab查看,这些选项包括截取另一个控制台的屏幕截图,以及截取延迟的屏幕截图。正如您在下面的示例中看到的,fbgrab屏幕截图类似于fbcat屏幕截图,只是您不需要显式地重新表征输出:$sudofbgrabPictures/myOtherfile查找字体据我所知,除了查看字体存储目录/usr/share/consolefonts除了/(Debian等)、/lib/kbd/consolefonts/(Fedora)、/usr/share/kbd/consolefonts(openSUSE),没有其他方法可以列出已安装的字体。将字体更改为可读字体并不是一个新概念。我们应该尊重前人的经验!可读性非常重要。可配置性也很重要,但现在不那么重要了。在Debian/Ubuntu等系统上,可以运行sudodpkg-reconfigureconsole-setup设置控制台字体,然后在控制台运行setupcon命令使修改生效。setupcon是控制台设置包的一部分。如果您的Linux发行版不包含此工具,可以在openSUSE中下载。您也可以直接编辑/etc/default/console-setup文件。下面的示例将字体设置为我最喜欢的32点TerminusBold,并将控制台的宽度严格限制为80列。ACTIVE_CONSOLES="/dev/tty[1-6]"CHARMAP="UTF-8"CODESET="guess"FONTFACE="TerminusBold"FONTSIZE="16x32"SCREEN_WIDTH="80"这里FONTFACE和FONTSIZE的值来了来自字体的文件名为TerminusBold32x16.psf.gz。是的,你需要颠倒FONTSIZE中值的顺序。电脑就是那么有趣。然后再次运行setupcon使新配置生效。您可以使用showconsolefont查看当前使用的字体的所有字符集。有关选项的完整说明,请参阅manconsole-setup。Systemd与console-setup不同,除了字体之外,您不需要安装任何东西。您只需要编辑/etc/vconsole.conf并重新启动。我在Fedora和openSUSE系统安装了Terminus的一些超大字体包,因为默认安装的字体最多只有16点,我要32点。然后修改/etc/vconsole.conf的内容为:KEYMAP="us"FONT="ter-v32b"下周我们将学习一些很酷的控制台技巧和一些在控制台上运行的多媒体应用程序。
