O kernel do Linux usa fontes de / usr / share / consolefonts? É seguro trabalhar com o kernel?

0

SO: Ubuntu 18.04. Eu acho que é independente de distribuição. O Arch Linux usa o mesmo princípio, mas de outra maneira.

Eu defino a fonte tty editando o arquivo /etc/default/console-setup :

CODESET="guess"
FONTFACE="TerminusBold"
FONTSIZE="22x11"

O arquivo da fonte está localizado no /usr/share/consolefonts/ . Tem psf format.

Em Wikipédia :

PC Screen Font (PSF) is a bitmap font format currently employed by the Linux kernel for console fonts. Documentation of the PSF file format can be found within the source code of the Linux Kernel.

Perguntas:

  1. O kernel carrega esse arquivo no espaço do kernel?
  2. Se não, como o tty (que reside no kernel) renderiza caracteres do arquivo .psf , que reside no /usr/share/consolefonts/ ?
  3. Eu estava pensando que o kernel é um pedaço sólido de código, que não usa nenhum arquivo do usuário (exceto módulos do kernel), por questões de confiabilidade e segurança. Estou errado? Ou as fontes do console são exceção?
  4. Como posso verificar qual arquivo .psf foi carregado especificamente? Porque a pasta /usr/share/consolefonts/ tem muitos arquivos TerminusBold22x11.psf.gz , com diferentes conjuntos de códigos. Eu quero saber qual arquivo específico foi usado. Verifico dmesg e syslog , mas não encontrei essa informação lá.
por MiniMax 06.10.2018 / 19:18

1 resposta

0

Encontrei resposta para a pergunta para o Ubuntu 18.04:

sudo strace -s99 setupcon 2>&1 | grep '.psf' 

Resultado

read(3, "/etc/console-setup/cached_Uni2-TerminusBold22x11.psf.gz\n", 128)

Explicação:

Ao usar o programa setupcon , o systemd faz a configuração do console na inicialização do sistema operacional. Pode ser visto neste arquivo: /lib/systemd/system/console-setup.service . Assim, repetindo setupcon manualmente, temos a possibilidade de strace de suas chamadas de sistema e encontrar o arquivo de fonte usado.

setupcon is a program for fast and easy setup of the font and the keyboard on the console. Most of the time you invoke setupcon without arguments. The keyboard configuration is specified in ~/.keyboard or /etc/default/keyboard. The font configuration is specified in ~/.console-setup or /etc/default/console-setup.

    
por 07.10.2018 / 01:18