Как я постоянно изменяю тип шрифта консоли TTY, таким образом, он содержит после перезагрузки?

Можно ли использовать sysctl(8), возможно, через sudo(1)? Достаточно задать их в sysctl.conf(7)?

14
27.04.2015, 12:59
3 ответа

См. https://shubuntu.com/questions/630118/ и https://shubuntu.com/questions/328463/ .

Эта проблема, кажется, вызвана несоответствием в названии шрифтов Эта консольная установка ожидает против, что в / usr / Share / Consolefonts / , и Таким образом, скопированы на / etc / console-setup / , когда вы выбираете шрифт для использования (используя Настройка консоли DPKG-реконфигурета ).

Если вы перейдете к консоли и выполните stroace / lib / udev / Console-setup-tty FBCON , Вы можете увидеть, что он пытается открыть такие шрифты:

/etc/console-setup/Lat15-TerminusBold11x22.psf

, но если вы посмотрите в / etc / console-setup / , есть только горстка Шрифты там (те, которые вы выбрали), и они больше похожи на это:

/etc/console-setup/Lat15-TerminusBold22x11.psf.gz

Уникам имеет ширину высоты x, а другая имеет ширину х высота.

Проблема может быть закреплена несколькими способами.

(1) / lib / Udev / Console-Setup-Tty может быть исправлено - это тем более постоянное, восходящее решение.

(2) Вы можете вручную изменить / etc / default / console-setup , изменяя Высота и ширина в fontsize. Это нужно будет сделано каждый раз, когда вы Измените шрифты, используя Установка консоли DPKG-Reconfigure . Но когда то Перезагрузка машины, что предпочтение сохраняется.

(3) Вы можете установить шрифты, которые ожидают, что нажав на настройку консоли. Этот Это то, что я называю опцией «Overkill». Я сделал это так:

в /etc/rc.local:

# install console fonts and then set up console
/etc/console-setup/fonts.sh install
/lib/udev/console-setup-tty fbcon

create называется сценарием /etc/console-setup/fonts.sh :

#!/bin/bash

action=$1

srcdir="/usr/share/consolefonts"
parent="/etc/console-setup"
subdir="fonts"

case "$1" in
    install)
        # console fonts are not named properly in Ubuntu 15.04, compensate
        [[ -d $parent/$subdir ]] || mkdir $parent/$subdir
        for x in $( cd $srcdir ; ls -1 ) ; do
           # rearrange the two numbers from HHxWW to WWxHH
           y=$(echo "$x" | sed -e 's/^\([^-]*\)-\([^0-9]*\)\([0-9]*\)x\([0-9]*\).psf.gz/\1-\2\4x\3.psf.gz/g')
           # whether the pattern above matches or not, we'll be uncompressing here
           z=${y/.psf.gz/.psf}
           [[ ! -f $parent/$subdir/$z ]] && zcat $srcdir/$x > $parent/$subdir/$z
           [[ ! -L $parent/$z ]] && ln -sv $subdir/$z $parent/$z
        done
        ;;
    uninstall)
        rm -rf $parent/$subdir
        # only remove broken links (links to the fonts we removed above)
        rm $(find -L $parent -type l)
        ;;
    *)
        echo "$(basename $0) install|uninstall"
        ;;
esac

exit 0

для быстрого прагматического раствора, Я бы сделал # 2, с комментарием в файл, который Может быть необходимо восстановить, если вы выберете другой шрифт (предполагая Комментарий также не перезаписывается).

Но № 3 хорошо работает с минимальной суетой или беспорядком.

6
27.01.2020, 19:51

Недавно я столкнулся с этой проблемой на своем 64-разрядном компьютере с Ubuntu 15.04. Команда setupcon устанавливает шрифты, которые я установил с помощью dpkg-reconfigure console-setup .

Я добавил setupcon в свой rc.local, но это оставило пробел, в котором шрифт все еще был неправильным (потому что rc.local запускается после настройки консоли), так что этого было недостаточно. для меня.

Итак, я решил пойти глубже. Я отредактировал свой файл /lib/systemd/system/console-setup.service и добавил ExecStart = / bin / setupcon в конец файла. Это вызовет setupcon при настройке консоли, исправляя шрифты при загрузке без временного промежутка .

6
27.01.2020, 19:51

Самым простым решением, которое я нашел, было отредактировать / etc / default / console-setup , чтобы установить

FONT="Lat7-Terminus32x16.psf.gz"

и закомментировать все остальное, кроме строки ACTIVE_CONSOLES .

Вы можете применить это немедленно с помощью setupcon , и оно будет применено также после перезагрузки.

Указание имени шрифта, а не отдельных компонентов позволяет избежать несоответствия имен, описанного Аланом Портером.

2
27.01.2020, 19:51

Теги

Похожие вопросы