Ubuntu Server ignora a configuração do console ao reinicializar no VirtualBox

2

Eu encontrei esse comportamento estranho. No VirtualBox, o Ubuntu Server 12.04 usa essa fonte:

Euachoissodifícildeler.Agorapossoexecutardpkg-reconfigureconsole-setupfineedefinirafontecomoFixed,entãoéassim:

Isso também é como parece por padrão no VMWare; muito melhor na minha opinião. Curiosamente, a fonte do gerenciador de inicialização também se parece com isso (ou seja, carrega corretamente).

dpkg-reconfigure console-setup atualiza corretamente o arquivo /etc/default/console-setup , mas depois de uma reinicialização, todas as configurações desapareceram. Por algum motivo, ele não carrega console-setup .

Alguém tem uma idéia de onde o problema pode estar? Ou melhor ainda, onde eu poderia começar a procurar?

    
por dialer 04.08.2013 / 10:32

2 respostas

2

Este é um bug: A fonte do console não é definida e você pode ver o patch de aqui . em 12.10, mas o patch ainda não foi portado para 12.04.

Para que você possa corrigi-lo criando o trabalho iniciante /etc/init/console-font.conf com o seguinte conteúdo:

# console-font - set console font
#
# Set the console font, in case the similar udev rule races with Plymouth
# and thus fails to do it.

description "set console font"

start on starting plymouth-splash

task

exec /lib/udev/console-setup-tty fbcon  
    
por hello.wjx 27.12.2013 / 06:54
0

Veja ubuntu disrgards-console-setup vívido após a reinicialização e link .

Esse problema parece ser causado por uma incompatibilidade na nomenclatura de fontes que console-setup espera vs o que está em /usr/share/consolefonts/ , e assim copiado para /etc/console-setup/ quando você escolhe uma fonte para usar (usando dpkg-reconfigure console-setup ).

Se você for a um console e fizer um strace /lib/udev/console-setup-tty fbcon , você pode ver que está tentando abrir fontes como esta:

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

Mas se você olhar em /etc/console-setup/ , há apenas um punhado de fontes lá (as que você escolheu), e elas se parecem mais com isso:

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

Um tem altura x largura e o outro tem largura x altura.

O problema pode ser corrigido de algumas maneiras.

(1) /lib/udev/console-setup-tty pode ser corrigido - isso é o mais solução permanente a montante.

(2) Você pode alterar manualmente /etc/default/console-setup , revertendo o altura e largura em FONTSIZE. Isso precisará ser feito toda vez que você altere as fontes usando dpkg-reconfigure console-setup . Mas quando o máquina reinicializa, essa preferência é mantida.

(3) Você pode instalar as fontes que o console-setup-tty espera. este é o que eu chamo de opção "overkill". Eu fiz assim:

Em /etc/rc.local:

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

Crie um script chamado /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/-x.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

Para uma solução pragmática rápida, eu faria # 2, com um comentário no arquivo que pode ser necessário ser refeito se você escolher uma fonte diferente (assumindo a o comentário também não é sobrescrito).

Mas o # 3 funciona bem com o mínimo de barulho ou bagunça.

    
por Alan Porter 14.06.2015 / 01:22