Por que não consigo localizar corretamente o Debian 8.1 no meu BeagleBone Black?

1

Eu estava usando o BBB (BeagleBone Black) por um tempo agora, mas com o Arch Linux. Agora que o Debian também suporta o systemd, decidi experimentá-lo. Então, eu segui este guia e usei a imagem e-flasher do eMMC para distribuir um debian novo para o BBB.

Após a reinicialização com êxito, desejei definir meu idioma, mas todas as consultas ao localectl atingiram o tempo limite. systemctl status systemd-localed.service revelou que o serviço entrou em estado de falha.

A saída diz:

Failed to read locale data: No such file or directory

Mas nada mais. Ao olhar para o diário com journalctl -r -u systemd-localed.service , há a mesma mensagem, mas nenhuma pista sobre qual arquivo está faltando.

Fazer algumas pesquisas com man systemd-localed revelou dois arquivos de configuração possíveis

/etc/vconsole.conf

e

/etc/locale.conf

Os dois arquivos não existem na imagem, mas mesmo depois de criá-los com a orientação do Google (no que diz respeito ao conteúdo deles), o erro persiste.

Alguém já experimentou um comportamento semelhante da imagem Debian 8.1 no BBB? Ou existem outros lugares conhecidos para ver esses arquivos perdidos?

Atenciosamente

    
por IlikePepsi 01.07.2015 / 18:54

1 resposta

2

Eu encontrei o mesmo problema:

O serviço systemd-localed lança o binário /lib/systemd/systemd-localed , que então tenta ler /etc/locale.conf , /etc/vconsole.conf e - mesmo que isso não pareça estar documentado em nenhum lugar - /etc/default/keyboard :

# strace /lib/systemd/systemd-localed
[…]
open("/etc/locale.conf", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 6
[…]
open("/etc/vconsole.conf", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 6
[…]
open("/etc/default/keyboard", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 6

/etc/default/keyboard é geralmente gerado pelo pacote keyboard-configuration . Você provavelmente também desejará instalar os "utilitários de fonte e keytable do console Linux" no pacote kbd e nos mapas de teclado do console-data package:

apt-get install keyboard-configuration kbd console-data
dpkg-reconfigure console-data
dpkg-reconfigure keyboard-configuration

Como seu sistema usa uma arquitetura ARM, você terá que selecionar seu mapa de teclado da lista "completa" quando console-data estiver configurado.

Isso gerará /etc/default/keyboard e permitirá que systemd-localed seja iniciado e localectl seja usado, mesmo que pareça não reconhecer os mapas de teclado instalados com console-data . Você pode definir manualmente algo como localectl set-keymap us-latin1 , mas não consegui verificar se isso tem algum efeito.

Além disso, embora localectl mostre a localidade correta, ela não parece ser definida globalmente, então locale ainda mostra "POSIX" e programas como tmux e htop continuarão usando ASCII.
Não tenho certeza se isso é um bug real do Debian ou apenas um efeito de instalar um sistema via debootstrap (como normalmente é feito para criar imagens de cartão SD para placas embarcadas) em vez de executar o instalador completo (que pode criar automaticamente alguns dos arquivos necessários acima).

    
por 05.07.2015 / 19:55