Как изменить шрифт в терминале debian

Обновлено: 02.07.2024

Шрифты в Линуксе сошли с ума. Большинство Линукс дистрибутивов перегружено большим набором шрифтов: с засечками, без засечек и моноширинных. И все они едва ли на пиксель отличаются друг от друга.

Шрифты на компьютерах сошли с ума. Иногда я с ностальгией вспоминаю времена электрических печатных машинок, когда приходилось вручную менять печатающий шарик, чтобы изменить шрифт. При этом мы всегда точно знали, что именно получим в итоге.

Есть еще одна опасность: шрифты-дубликаты в различных форматах. Если у вас один и тот же шрифт имеется в двух различных форматах, то его поведение будет противоречиво и непредсказуемо. Формат должен быть единственным.

Форматы без тайн.

Три основных формата шрифтов суть: TrueType, OpenType и PostScript.

TrueType шрифты имеют расширение *.ttf в ОС Linux/Unix, Windows и Mac OS X, и расширение *.ttc в Mac. TrueType шрифты изящно изменяют свои размеры без зубчатых кромок или несовпадения толщины линий; нет нужды в отдельном файле для каждого размера, нужны лишь файлы для разных стилей: таких как курсив или полужирный.

PostScript шрифты имеют каждый по два файла: *.afm для экранного шрифта, и *.pfb для принтерного шрифта. Эти расширения относятся к Linux и Unix; Windows дает PostScript шрифтам расширения: *.pfm и *.pfb . Mac OS X оперирует PostScript шрифтами многоразличными способами, я даже не хочу запутываться в их странностях.

OpenType это новый формат шрифта, разработанный совместно Microsoft и Adobe. Расширение его файла *.otf , и он работает как на Windows, так и на Mac.

Растровые (Bitmap) шрифты устарели. Необходимо иметь по особому файлу для каждого размера и стиля, так что трудно представить себе, чтобы сегодня ими кто-либо пользовался.

Большинство дистрибутивов Линукс сегодня включают как TrueType, так и PostScript Type 1 шрифты. Некоторые издатели настаивают на использовании шрифтов PostScript с "родными" PostScript принтерами, но это происходит все реже. Большинство принтеров поддерживают ту или иную эмуляцию PostScript. Ghostscript это интерпретатор PostScript'а, который становится стандартным для большинства дистрибутивов Линукс, так что вы почти всегда сможете прочесть и распечатать документы PostScript.

Шрифтовые менеджеры.

Линукс нуждается в хороших менеджерах шрифтов.

KDE'шный установщик шрифтов работает прилично: он находит и перечисляет те шрифты в вашей системе, о которых знает Fontconfig; также он устанавливает и удаляет шрифты. Кроме того, он сообщает тип шрифта и позволяет распечатать либо каталог всех шрифтов, либо избранные шрифты. Если хотите выбрать шрифты из списка вразбивку (не подряд), используйте Ctrl+ левая кнопка мыши , если хотите выбрать группу смежных шрифтов, то применяйте Shift+ левая кнопка мыши . Каждый шрифт занимает две строки, так что их много поместится на одном листе бумаги. Обычно в KDE установщик шрифтов находится в Центре Управления КДЕ. (прим. перев.: Какой у нее КДЕ? Где она там нашла распечатку шрифтов. ). Kubuntu помещает установщик шрифтов в System Settings -> Appearance.

Шрифты в Ubuntu: Это ужас.

  • любые xfonts или xfont утилиты
  • x-tccidfont-conf
  • ttf-opensymbol
  • ttf-dejavu
  • все, что начинается с lib
  • fontconfig
  • defoma
  • все, что начинается с console
  • gsfonts

Часть 2

Предварительный просмотр шрифтов.

Бдительный читатель Terry H. сообщил мне, что недавно появился новый просматриватель шрифтов: GNOME-Specimen. Это еще ребенок, первый релиз датируется ноябрем 2006, а современная версия 0.3.1. Пользователи Debian найдут его на репозиториях Lenny и Sid. поклонники Fedora 6 найдут его на репозитории Extras. Fedora 7 и 8 объединили Core и Extras, так что теперь у них нет отдельного Extras репозитория. GNOME-Specimen имеет приятный интерфейс и дает возможность выбирать и сравнивать различные шрифты "лицом к лицу", хотя не позволяет устанавливать, удалять или распечатывать образцы шрифтов.

Программа gucharmap, the GNOME Character Map, легко читаема и выводит как сложные таблицы символов, так и информацию по отдельным символам. Можно также помещать символы в Буфер обмена и вставлять затем в документы. Если встретите шестнадцатеричные символы, типа: 15-0C или 14-0F в таблице символов, то, значит, на этой позиции таблицы нет никакого символа. (Конечно gucharmap работает на любом рабочем столе или оконном менеджере, не только на GNOME)

Адепты командной строки могут использовать xlsfonts, чтобы просмотреть все доступные шрифты:
Затем используйте xfd ("X font display") , чтобы просмотреть таблицу символов.

Поиск и установка новых шрифтов

Для начала проверьте репозитории вашего дистрибутива. На Debian, и его многочисленных потомках, устанавливайте новые шрифты обычным способом - с помощь программ aptitude или Synaptic. У поклонников Fedora есть Yum и дивный графический Package Manager. Что до остальных Линуксов. ну. вы поняли идею.

Если ваши желания все еще не удовлетворены, существует несколько сайтов с хорошими свободными шрифтами для Линукс. Набор шрифтов Linux Libertine создан как замена качественным Times и Times New Roman. Они бесплатны и лицензированы по GPL. Инсталляция проста: закачайте и распакуйте тарбалл, затем переместите директорию LinLibertineFont/ в любую из директорий, перечисленных в файле /etc/fonts/fonts.conf . Ваш новый Libertine шрифт немедленно готов к применению.

Просмотрите следующие сайты на предмет приобретения шрифтов:

The Linux Box
является большим подспорьем, предлагая шесть тысяч семьсот шестьдесят шрифтов.

Консольные шрифты

Здесь я буду говорить о реальной Линукс-консоли, в которую попадают, нажав Ctrl+Alt+F1 . Не о неженке X терминале, но простой работяге безо всяких X-window окошек. В Debian консольные шрифты хранятся в виде сжатых файлов в /usr/share/consolefonts . Fedora помещает их в /lib/kbd/console/fonts .

Чтобы изменить шрифт консоли, пользователь Fedora должен редактировать файл /etc/sysconfig/i18n . По умолчанию установлен шрифт latarcyreb-sun16 . Можно заменить его на любой шрифт из каталога /lib/kbd/console/fonts .

В Debian, ищите /etc/console-tools/config , и устанавливайте любой шрифт, присутствующий в директории /usr/share/consolefonts .

Пользователь Ubuntu должен изменить /etc/default/console-setup . Программа сама подскажет вам, какие переменные можно использовать. Оставьте в покое CHARMAP="UTF-8" ; Юникод вам всегда пригодится. CODESET, FONTFACE и FONTSIZE настроят ваши шрифты.

Новый шрифт появится, как только вы залогинитесь в другую консоль, так что жмите Ctrl+Alt+F1 , или любую другую F -клавишу вплоть до F6 , вводите пароль и пробуйте. Alt+Fn переключает между консолями, а Alt+F7 вернет обратно в X Window.

Программа FontForge

FontForge - это интересное приложение для просмотра, редактирования, и создания шрифтов. Его интерфейс выглядит довольно рахитичным: мелкие, зубчатые, не масштабируемые шрифты и никаких конфигурационных опций типа: "директории шрифтов по умолчанию", "темы" и т.п. К тому же, открывается программа всегда в вашей домашней директории - хотите вы того, или нет.

Но под неприглядной внешностью скрывается мощный инструмент для создания шрифтов всех форматов и для конвертации шрифтов и иные форматы. Линукс, конечно, поддерживает большой диапазон форматов, но если все же задача конвертации возникла, то это - тот самый инструмент, который нужен. Документация подробна и доступна на нескольких языках. Даже имеется поддержка графических планшетов Wacom. Шрифты Libertine были созданы на FontForge. Шрифт-дизайн дело трудное и требующее весьма много времени, но, кто знает, возможно именно у вас откроется талант.

У меня есть малина pi B, использующая Debian, просто оснащенная 3,5-дюймовым TFT-LCD монитором через VGA. Размер текста в режиме командной строки слишком мал, чтобы читать, поэтому я хотел бы увеличить его размер, и один из методов говорит «edit /boot/config.txt». Однако команда ls /boot не показывает config.txt - единственный .txt файл cmdline.txt .

Я сделал что-то не так? Я был бы признателен за любую помощь в продвижении вперед.

4 ответа

У меня тоже есть эта проблема, когда я использую свой огромный телевизор. Попробуйте следующее:

Чтобы просмотреть список доступных шрифтов: ls /usr /share /consolefonts /

Цифры в конце указывают ширину и высоту (хотя не всегда это точно!)

Не знаю, почему отсутствует config.txt. Однако вы можете использовать это:

в качестве шаблона для создания нового.

Я предполагаю, что а) он был удален случайно или b) был каким-то образом поврежден в файловой системе и исчез. (а более вероятно)

Вы можете использовать setfont из терминала, чтобы установить текущий шрифт консоли на один из шрифтов, найденных в /usr/share/consolefonts/ . Вам не нужно указывать полный путь или суффикс .psf.gz. Просто что-то вроде:

сделает трюк. Вы можете играть до тех пор, пока не найдете нужный шрифт, а затем, чтобы сделать его по всей стране и по умолчанию, вы можете указать его в /etc/kbd/config , поскольку пакет /служба kbd берет на себя обезьяна с консольным шрифтом во время запуска.

В качестве дополнительной заметки вы можете найти пользовательскую запись в /etc/fb.modes , чтобы получить собственное разрешение на маленьком экране, чтобы дисплей выглядел красиво и четче.

Вот самое простое решение: когда вы входите в Linux (или Unix), файл с именем .profile выполняется оболочкой. Недавно я получил 7-дюймовый ЖК-монитор с разрешением 1024x600. Последние 2 года я общался с Rpi через ssh, но теперь мне нужна была система с небольшим монитором. Поэтому я редактировал .profile файл и добавили следующую строку в конец:

Шрифт размером 14x28 пикселей, который работает для меня. Там много (сотен) шрифтов. Если вам нравится немного меньше, попробуйте 24x12 или больше 32x16.

Нажав на вкладку «edit» в LXTerminal -> Перейдите в настройки -> Перейдите на вкладку «Стиль» -> Здесь вы можете изменить свой шрифт, размер, цвет и amp; фон

У меня установлена ​​Unix-подобная ОС без оконной среды; т.е. просто консоль в текстовом режиме и без графического интерфейса.

Можно ли изменить шрифт, используемый консолью?

Чтобы было ясно, я не говорю об эмуляторе терминала, который поставляется с окружением рабочего стола, таким как KDE или GNOME.

Если вы используете консоль Linux, лучший способ, который я нашел, это:

Другой способ заключается в использовании setfont из kbd пакета:

Это работает для моего Debian; это может отличаться для вас.

В Debian вы также можете запускать dpkg-reconfigure -plow console-setup запрос на различные настройки консоли и выбирать их из меню.

Размеры шрифта, перечисленные ниже dpkg-configure console-setup : 6x12, 8x14, 8x16, 10x20, 11x22, 12x24, 14x28 и 16x32. Мне пришлось перезагрузиться, чтобы это вступило в силу Я использовал dpkg-reconfigure console-setup решение, и после того, как я сделал выбор вариантов шрифта, он изменился /etc/default/console-setup и запустился update-initramfs (я полагаю, с -u опцией). Однако в вашем ответе не упоминается бег update-initramfs . Это необходимо?

Если вы хотите использовать практически любой X-совместимый шрифт, вам стоит взглянуть на работу Дэвида Херрмана kmscon . Название слегка противоречит проекту, поскольку настройка режима ядра не обязательна для его работы - он также работает с устройствами с кадровым буфером - например, если вы используете проприетарные драйверы дисплея AMD или nvidia. С kmscon вы получаете мультиместное управление сеансами, xterm как клавиатура и UTF-8 обработки шрифтов и управление сеансами. Изменение шрифта может быть сделано с помощью /etc/kmscon/kmscon.conf или через параметр командной строки.

/etc/default/console-setup и другие. были заменены в операционных системах systemd, хотя вы обнаружите, что некоторые операционные системы, такие как Debian, пытаются поддерживать более старую конфигурационную систему.

Способ сделать это в операционной системе systemd - отредактировать настройки шрифта в /etc/vconsole.conf файле. Эти параметры применяются systemd-vconsole-setup службой, которая по сути является прославленным способом запуска setfont и loadkeys до запуска служб входа в систему.

Так что вы бы FONT=Uni2-Terminus28x14 в этом файле, например.

Обратите внимание, что служебная программа позволяет параметрам командной строки ядра, например, vconsole.font переопределять /etc/vconsole.conf содержимое. Если вы возитесь с опциями командной строки ядра GRUB, помните об этом.

Проблема этого подхода в том, что он systemd специфичен и меняет настройки по умолчанию для всех пользователей.

Используя Ubuntu 16.04 (вероятно, работает во всех поддерживаемых версиях), я отредактировал

/.bashrc и перед самым всплыванием терминала в конце файла вставил setfont команду:

Теперь при выборе Ctrl + Alt + F1 через Ctrl + Alt + F6 и получить хорошие большие шрифты.

Это самый большой из доступных шрифтов, и вы можете увидеть полный список с помощью ls команды:

Образец экрана

Это факсимиле, а не настоящий снимок экрана с консоли, где экран шире на 20%, а фон черный:

11.1. Как убедиться, что все программы используют одинаковый формат бумаги?

Установите пакет libpaper1 , и вас попросят указать формат бумаги по умолчанию для всей системы. Настройка будет сохранена в файле /etc/papersize .

Users can override the paper size setting using the PAPERSIZE environment variable. For details, see the manual page papersize (5) .

11.2. Как обеспечить доступ к файлам устройств без нарушения защиты системы?

Многие файлы устройств в каталоге /dev принадлежат предопределённым группам. Например, /dev/sr0 принадлежит группе cdrom .

Если вы хотите предоставить конкретному пользователю доступ к устройству, то включите пользователя в группу, которой принадлежит это устройство, т. е. сделайте:

Благодаря этому, вам не нужно изменять права доступа на сами файлы устройств.

Если вы выполняли это из оболочки командной строки или графического окружения этого пользователя, то вам нужно выйти из системы и войти снова, чтобы стать членом этой группы. Чтобы посмотреть, в какие группы вы входите, введите команду groups .

Заметим, что при использовании udev если вы изменяете права доступа к оборудованию, то для некоторых устройств они могут измениться при запуске системы; если это происходит с каком-то важным для вас оборудованием, то вам следует изменить соответствующие правила в /etc/udev .

11.3. Как в Debian правильно сменить консольный шрифт при запуске системы?

Для этой задачи существуют пакет kbd , отредактируйте файл /etc/kbd/config .

11.4. Как настроить параметры по умолчанию для приложений X11?

В Debian файлы ресурсов программ X11 устанавливаются в каталог /etc/X11/app-defaults/ . Если вы хотите глобально изменить настройки приложений X, то отредактируйте файлы настроек из этого каталога. Эти файлы считаются настроечными, так что их содержимое будет сохраняться при обновлениях системы.

11.5. How does a Debian system boot?

Like all Unices, Debian boots up by executing the program init . Like most Linux distributions, a default Debian system uses systemd as the implementation of init . Traditional System-V style init and other methods are also supported. [6]

To control the order in which services are started, traditional System-V style Unix systems use runlevels . These are replaced by targets under systemd. To display the default target to which systemd will bring the system, run the command

During boot-up, systemd starts the services or other targets listed in the default target file /lib/systemd/system/default.target . The files for these services and targets are installed and the service is enabled during Debian package installation. If you specifically wish not to start a service during boot-up, instead of removing the corresponding package, you can run the command

using the name of the service file installed in /lib/systemd/system (usually based on the name of the package).

You can check the status of any service by the command

. To start or stop a service, run

. The service command works with any init system supported on a Debian system, not just with systemd. If you however prefer to use the same command on any systemd-supported Linux system, for checking the status run

to get the same information.

11.6. And how about Debian and traditional System V init?

Debian supports booting using traditional System V init, via the sysvinit-core package. The configuration file for System V init (which is /etc/inittab ) specifies that the first script to be executed should be /etc/init.d/rcS . This script runs all of the scripts in /etc/rcS.d/ by forking subprocesses to perform initialization such as to check and to mount file systems, to load modules, to start the network services, to set the clock, and to perform other initialization.

По окончании процесса загрузки init выполняет все сценарии запуска в каталоге, соответствующем установленному по умолчанию уровню запуска (этот уровень задаётся записью id в /etc/inittab ). Как и в большинстве Uniх-ов, совместимых с System V, в Linux имеется 7 уровней запуска:

0 (останов системы),

1 (однопользовательский режим),

с 2 по 5 (различные многопользовательские режимы), и

6 (перезагрузка системы).

В системах Debian что означает, что по умолчанию будет установлен уровень запуска '2' (вход в многопользовательский режим), и будут запущены сценарии из каталога /etc/rc2.d/ .

Debian использует порядок загрузки в соответствии с зависимостями при помощи insserv , в каждом сценарии в /etc/init.d/ используются заголовки LSB, а также параллельную одновременную загрузку при помощи startpar , что ускоряет процесс загрузки системы.

Сценарии в любом каталоге, /etc/rcN.d/ являются лишь символьными ссылками на сценарии в /etc/init.d/ . Тем не менее, имена файлов в каждом из каталогов /etc/rcN.d/ выбираются таким образом, что они обозначают способ запуска сценариев в /etc/init.d/ . Например, до выхода на любой уровень запуска запускаются все сценарии, имена которых начинаются с 'K'; эти сценарии завершают работу служб. После этого запускаются все сценарии, имена которых начинаются с 'S'; эти сценарии запускают работу служб. Число после букв 'K' или 'S' обозначает порядок запуска сценария. Сценарии, имена которых содержат меньшее число, запускаются раньше.

Для поддержки этого метода все сценарии в каталоге /etc/init.d/ принимают один из параметров: «start», «stop», «reload», «restart» или «force-reload» и затем выполняют задачу, определяемую этим параметром. Эти сценарии можно использовать даже после окончания процесса загрузки системы для управления различными процессами.

Например, при задании параметра «reload» команда

отправляет службе sendmail сигнал для выполнения повторного чтения файла настройки.

Заметьте, что invoke-rc.d не следует использовать для вызова сценариев /etc/init.d/ , нужно использовать service .

11.7. And are there yet other ways of booting a Debian system?

If you do like System V init, but don't like the /etc/rc?.d/* links, you could install the file-rc package. That will convert the links into one single configuration file /etc/runlevel.conf instead.

If you like neither System V nor systemd, you might like openrc or runit or daemontools .

11.8. Как система управления пакетами работает с пакетами, содержащими настроечные файлы для других пакетов?

Предположим, что какие-то пользователи захотели настроить новый сервер, установив группу пакетов Debian и собственный пакет, состоящий из настроечных файлов. Вообще, это не очень хорошо, поскольку dpkg не будет знать о файлах настроек, если они находятся в отдельном пакете, и может затереть эти файлы при обновлении одного из пакетов исходной «группы».

Вместо этого создайте собственный пакет, который правит настроечные файлы интересующей «группы» пакетов. Впоследствии dpkg и другие утилиты системы управления пакетов увидят, что файлы были отредактированы локальным «администратором», и не станут их трогать при обновлении указанных пакетов.

11.9. Как заменить программу, установленную из какого-либо пакета, на свою собственную?

Предположим, что системный администратор или пользователь хотят использовать программу «login-local» вместо «login» из пакета Debian login .

НЕ надо:

перезаписывать /bin/login программой login-local .

Система управления пакетами не будет знать об этих изменениях и при последующих обновлениях или установках просто заменит изменённый вами /bin/login новым из пакета login (или любого другого пакета, предоставляющего /bin/login ).

чтобы заставить Debian при последующих обновлениях пакета login записывать файл /bin/login в /bin/login.debian .

чтобы перенести вашу локальную программу в нужное место.

Запустите dpkg-divert --list , чтобы узнать, какие замены (отклонения) уже имеются в вашей системе.

Details are given in the manual page dpkg-divert (8) .

11.10. Как включить самостоятельно собранный пакет в список доступных пакетов, известных системе управления пакетами?

КАТ_ДВОИЧН_ФАЙЛОВ — это каталог, где находятся файлы-архивы Debian (обычно имеющие расширение «.deb»).

ФАЙЛ_OVERRIDE — это файл, который редактируется сопровождающими дистрибутива и обычно хранится в FTP-архиве Debian в файле indices/override.main.gz для Debian-пакетов из раздела дистрибутива «main». Для локальных пакетов его использовать не обязательно.

ПРЕФИКС_ПУТИ — это необязательная строка, которая может предшествовать именам файлов в my_Packages .

После создания файла my_Packages , сообщите системе управления пакетами о новых пакетах командой:

If you are using APT, you can add the local repository to your sources.list (5) file, too.

11.11. Некоторым пользователям нравится mawk, другим gawk; некоторым vim, другим elvis; некоторым trn, другим tin. Как осуществляется поддержка предпочтений в Debian?

Бывают случаи, когда в двух пакетах имеются две разные версии какой-либо программы, в целом обеспечивающих одну и ту же функциональность. Одни пользователи могут предпочитать одну из этих программ другой в силу привычки или более привлекательного интерфейса. У других же пользователей этой же системы может быть иное мнение.

Для того, чтобы системные администраторы (или пользователи) могли выбирать для себя из нескольких пакетов с одинаковой функциональностью один предпочтительный, соблюдая в то же время зависимости без необходимости указания конкретного пакета, в Debian используется система «виртуальных» пакетов.

Например, в системе может существовать две различные версии программ чтения новостей. Пакет сервера новостей может 'рекомендовать', чтобы в системе была установлена некая программа для чтения новостей, но какая именно — tin или trn , предлагается выбрать пользователю. Решается это созданием виртуального пакета news-reader , который предоставляется пакетами tin и trn . Какая именно из этих программ будет вызываться, определяется символьной ссылкой файла виртуального пакета /etc/alternatives/news-reader на выбранный файл, например, на /usr/bin/trn .

Простого создания символьной ссылки для полного решения задачи использования альтернативной программы недостаточно; обычно необходимо также заменить страницы руководства и, возможно, вспомогательные программы. Для обеспечения того, чтобы все эти файлы, относящиеся к указанному пакету, выбирались в системе по умолчанию, используется сценарий на Perl update-alternatives .

Например, чтобы проверить, какие программы предоставляют «x-window-manager», выполните:

Если вы хотите изменить программу:

И следуйте инструкциям на экране (просто укажите номер желаемой программы из списка).

Если пакет почему-то не зарегистрировал себя как оконный менеджер (если это ошибка, сообщите о ней), или если вы используете менеджер из каталога /usr/local, то на экране вы не увидите предпочитаемой вами программы. Ссылку можно обновить с помощью указания дополнительных параметров для команды, например:

Первый аргумент параметра «--install» представляет собой символьную ссылку на /etc/alternatives/NAME, где NAME задаётся вторым аргументом. Третий аргумент указывает программу, на которую должна указывать ссылка /etc/alternatives/NAME, а четвёртый задаёт приоритет (чем больше значение, тем больше вероятность автоматического выбора данной альтернативы).

Чтобы удалить добавленный вами вариант, просто выполните:

Читайте также: