Console-setup
console-setup - сценарий initrd в linux, отвечающий за гарнитуру шрифта в текстовой консоли.
Настройка
правитьМестонахождение конфигурационных файлов
правитьDebian, ubuntu - Настройки конфигурации находятся в файле /etc/default/console-setup и при старте системы интерпретируются сценарием setupcon.
В Debian сценарий находится по пути /etc/init.d/console-setup
.
В Ubuntu — конфигурационный файл upstart /etc/init/console-setup.conf
.
Fedora - шрифт настраивается командой setfont сценарием файла Initrd, и интерпретируется конфигурационный файл /etc/sysconfig/i18n
. Изменения, вносимые в этот файл, вступают в силу только при создании новых файлов Initrd.
SUSE - шрифт настраивается с помощью /etc/init.d/kbd
. Он интерпретирует /etc/sysconfig/console
и настраивает шрифт командой setfont. Шрифт по умолчанию lat9w-16.psfu (с дополнительным символом euro)
Настройка файла
правитьПрежде всего необходимо разобратся со значением переменных.
ACTIVE_CONSOLES
правитьВ этой опции указываются tty консоли для которых будет применена дальнейшая конфигурация.
Для linux следует указать /dev/tty[1-6], а для BSD разумное значение будет /dev/ttyv[0-8]. Также вы можете установить специальное значение guess. Это вызовет setupcon который попытается угадать активные виртуальные консоли, смотря в конфигурационные файлы такие как /etc/inittab и /etc/ttys. Такой способ не всегда надёжен.
CHARMAP
правитьЗдесь задаётся желаемая кодировка консоли.
Возможные значения: UTF-8, ARMSCII-8, CP1251, CP1255, CP1256, GEORGIAN-ACADEMY, GEORGIAN-PS, IBM1133, ISIRI-3342, ISO-8859-1, ISO-8859-2, ISO-8859-3, ISO-8859-4, ISO-8859-5, ISO-8859-6, ISO-8859-7, ISO-8859-8, ISO-8859-9, ISO-8859-10, ISO-8859-11, ISO-8859-13, ISO-8859-14, ISO-8859-15, ISO-8859-16, KOI8-R, KOI8-U, TIS-620 и VISCII.
Также возможно особое значение guess: в этом случае команда locale будет использоватся, чтобы угадать нужную кодировку (в настоящее время это работает надежно только с GNU LIBC).
CODESET
правитьВ большинстве случаев специальное значение guess может быть использовано здесь, в таком случае подходящая кодировка будет угадана. Codeset определяет, какие символы поддерживаются шрифтом.
Возможные маленькие кодировки: Armenian, CyrAsia, CyrKoi, CyrSlav, Georgian, Greek, Hebrew, Lao, Lat15, Lat2, Lat38, Lat7 и Thai.
Возможные большие кодировки: Arabic, Ethiopian, Uni1, Uni2, Uni3 и Vietnamese.
Только небольшие кодировки можно использовать на FreeBSD.
FONTFACE и FONTSIZE
правитьВ значение FONTFACE указывается одно из пяти значений снизу, а в FONTSIZE доступный размер данного значения.
Доступные значения:
VGA (размеры 8x8, 8x14, 8x16, 16x28 and 16x32)
Terminus (размеры 6x12, 8x14, 8x16, 10x20, 12x24, 14x28 and 16x32)
TerminusBold (размеры 8x14, 8x16, 10x20, 12x24, 14x28 and 16x32)
Fixed (размеры 8x13, 8x14, 8x15, 8x16 and 8x18).
Исключение: Если указать CODESET=Ethiopian, то доступно два FONTFACE: Goha и GohaClassic, и 3 размера 8x12, 8x14 и 8x16.
VIDEOMODE
правитьПустое значение VIDEOMODE позволяет избежать настройку режима видео.
На FreeBSD вы можете запустить:
vidcontrol -i mode
для того, чтобы увидеть все возможные режимы видео. На Linux fbset используется для настройки режима видео, но очень часто это не работает, потому-что драйвер фреймбуфера по умолчанию (VesaFB) вляется довольно ограниченным и не допускает изменения в режиме видео.
FONT, FONT_MAP и CONSOLE_MAP
правитьПозволяет использовать не стандартный шрифт. Значение переменной FONT состоит из одного или нескольких имен файлов шрифтов разделенных пробелами. В Linux, когда шрифт не содержит встроенной карты Unicode, внешняя карта может быть задана с переменной FONT_MAP. Значение CONSOLE_MAP представляет собой файл, который определяет карту перевода с 8-битной кодировке пользователя в Unicode (только Linux) или непосредственно на позиции шрифта.
SCREEN_WIDTH и SCREEN_HEIGHT
правитьПозволяет указать размер экрана который setupcon будет обеспечивать с stty. Это может быть полезно с некоторыми брайлевскими устройствами, которые только 40 клеток в ширину. Размер экрана не может превышать то, что текущее разрешение экрана может отображать в соответствии с форматом загруженного шрифта.
Кодировки
правитьДанные значения вписываются в опцию CODESET'.
Есть два вида кодировок - небольшие (до 256 символов) и большие (до 512 символов). Только небольшие кодировок можно использовать на FreeBSD. Когда экран находится в текстовом режиме (т.е. фреймбуфер не используется), то шрифты, охватывающие большие кодировки уменьшат количество доступных цветов переднего плана.
Arabic (большая кодировка)
правитьПоддерживаемые языки: 'Арабский, Курдский в Иране, пушту, фарси, урду.
Работает со следующими FONTFACE: Fixed (размеры 8x16) и VGA (размеры 8x16 and 16x32).
Armenian
правитьПоддерживаемые языки: Армянский.
Работает со следующими FONTFACE: Fixed (все размеры).
CyrAsia
правитьЭта кодировка поддерживает некоторые из неславянских языков кириллицы: Абхазский, аварский, азербайджанский, башкирский, бурятский, чеченский, чувашский, Инупиак (Eskimo), КАРАКАЛПАКСКИЙ, казахский, киргизский, Коми, кумыкский, курдском, лезгинский, Мари (Чемерис), монгольский, осетинский, селькупы (остяк-самодийских), Таджикский , татарский, туркменский, Тувинский, узбекский, Якутский.
Работает со следующими FONTFACE: Fixed (все размеры).
CyrKoi
правитьПоддерживает полностью 8-битные кодировки KOI8-R и KOI8-U. Подходит для русского языка и украинского, когда одна из этих двух кодировок используется.
Работает со следующими FONTFACE (все размеры): Fixed, Terminus, TerminusBold, TerminusBoldVGA and VGA.
CyrSlav
правитьДанная кодировка обычно используется по умолчанию. Поддерживает полностью 8-битные кодировки ISO-8859-5 и CP1251. Поддерживает славянские кириллические языки: Белорусский, Болгарский, Македонский, Русский, Сербский и Украинский. Для сербского как для кириллицы и латиницы поддерживается.
Работает со следующими FONTFACE: Fixed (все размеры), Terminus (все размеры), TerminusBold (все размеры), TerminusBoldVGA (все размеры), VGA (размеры 8x16 и 16x32).
Ethiopian (большая кодировка)
правитьПоддерживает амхарский, эфиопский (Geez), Тигре и Тигринский.
Частично работает со следующими FONTFACE: Fixed (размеры 8x15 и 8x18), Goha (все размеры) и GohaClassic (все размеры).
Georgian
правитьПоддерживаемые языки: грузинский.
Работает со следующими FONTFACE: Fixed (все размеры).
Greek
правитьПоддерживаемые языки: греческий.
Работает со следующими FONTFACE: Fixed (все размеры) и VGA (размеры 8x16 and 16x32).
Hebrew
правитьПоддерживаемые языки: иврит и идиш.
Работает со следующими FONTFACE: Fixed (размеры 8x13, 8x15, 8x16 и 8x18) и VGA (размеры 8x16 и 16x32).
Lao
правитьПоддерживаемые языки: Лао.
Работает со следующими FONTFACE: Fixed (размеры 8x15 и 8x16).
Lat15
правитьОхватывает полностью ISO-8859-1, ISO-8859-9 и ISO-8859-15. Подходит для так называемых Latin1 и Latin5 языков: Афар, африкаанс, албанский, Арагонский, Астурийский, аймара, Басков, Бислама, бретонский, каталанский, Чаморро, датский, голландский, английский, эстонский, фарерский, Фиджийский, финский, французский, фризской, Фриульский, Галицкая, немецкий, Хири Моту, исландский идо, индонезийский, Интерлингва, Интерлингве, итальянский, низкий Saxon, Луле Sami, люксембургский, малагасийская, Манкс гэльский, Норвежский, Норвежский нюнорск, Окситанский, ором или Galla, португальский, Ретороманский (романский), Шотландский гэльский, сомалийский, Юг Сами, испанский, суахили, шведский, Тсвана, турецкий, Волапюк, Водский, Валлония, Коса, Yapese и зулу.
Работает со следующими FONTFACE: Fixed (все размеры), Terminus (все размеры), TerminusBold (все размеры), TerminusBoldVGA (все размеры), VGA (размеры 8x16 и 16x32).
Lat2
правитьОхватывает полностью ISO-8859-2. Знак евро и румынские буквы с запятой ниже, также поддерживаются. Подходит для так называемых LATIN2 языков: Боснийский, хорватский, чешский, венгерский, польский, румынский, словацкий, словенский и сербском (нижний и верхний).
Работает со следующими FONTFACE: Fixed (все размеры), Terminus (все размеры), TerminusBold (все размеры), TerminusBoldVGA (все размеры), VGA (размеры 8x16 и 16x32).
Lat38
правитьОхватывает полностью ISO-8859-3 и ISO-8859-14. Подходит для чичева эсперанто, ирландский, мальтийский и валлийский.
Lat7
правитьОхватывает полностью ISO-8859-13. Подходит для Литвы, Латвии, Маори и Маршалльский.
Работает со следующими FONTFACE: Fixed (все размеры), Terminus (все размеры), TerminusBold (все размеры), TerminusBoldVGA (все размеры), VGA (размеры 8x16 и 16x32).
Thai
правитьПоддерживаемые языки: тайский.
Работает со следующими FONTFACE: Fixed (все размеры).
Uni1 (большая кодировка)
правитьПоддерживает большинство латинских языков, славянских языков кириллицу, иврит и арабский едва.
Работает со следующими FONTFACE: Fixed (размеры 8x15 и 8x16) и VGA (все размеры).
Uni2 (большая кодировка)
правитьПоддерживает большинство латинских языков, языков славянской кириллицы и греческий. Работает со следующими FONTFACE: Fixed (все размеры) и VGA (размеры 8x16 и 16x32).
Uni3 (большая кодировка)
правитьПоддерживает большинство латинских и кириллических языков.
Работает со следующими FONTFACE: Fixed (все размеры).
Vietnamese (большая кодировка)
правитьПоддерживаемые языки: вьетнамский.
Работает со следующими FONTFACE: Fixed (размеры 8x13, 8x15, 8x16 и 8x18).
Файлы для настройки
правитьШрифты, которые вы хотите использовать в переменной FONT необходимо закидывать в папку /usr/share/consolefonts/
или /usr/share/syscons/fonts/
.
Карты перевода, которые вы хотите использовать в переменной CONSOLE_MAP необходимо закидывать в папку /usr/share/consoletrans/
или /usr/share/syscons/scrnmaps/
.
Полезности
правитьЦелью шрифта Terminus является уменьшение усталости глаз, когда приходится много читать. В настоящее время этот шрифт поддерживает только латиницу, кириллицу и греческие скрипты (Lat15, Lat2, Lat7, CyrAsia, CyrKoi, CyrSlav, Greek, Uni2 и Uni3 кодировки).
Шрифты FONTFACE TerminusBoldVGA оптимизированы для использования с обычными режимами текста видео. Они не должны использоваться с режимами фреймбуфера видео. Шрифты FONTFACE TerminusBold оптимизированы для использования с режимами фреймбуфера видео. Шрифты FONTFACE Terminus можно использовать во всех режимах видео.
Применение изменений
правитьИзменения применяются без перезагрузки компьютера (это же linux).
Команда для перезагрузки:
service console-setup reload
В некоторых дистрибутивах перезапуск может осуществлятся по иному, загляните в документацию к дистрибутиву.