Como se livrar da mistura de vários idiomas na linha de comando?

0

Eu instalei um sistema Debian 9 Stretch limpo a partir de um CD 'netinst'. A localidade padrão é definida como de_DE.UTF-8 . Alguma ferramenta userland, a saber, mkfs.ext4 , está me dando mensagens em idiomas misturados:

/dev/sdb7 hat ein ext4-Dateisystem mit Namen „tmp-rofs“
    auf Tue Jul 18 16:51:41 2017
 erzeugtProceed anyway? (y,N)

A confirmação não é reconhecida por 'y' mas por 'j' (alemão 'ja').

Esta é, estranhamente, uma estranha gramática alemã - a preposição 'auf' nunca é usada em conjunto com uma data. A concatinação 'erzeugtProceed' também é estranha.

Como você pode ver, a mensagem base é dada em alemão (como pretendido), exceto o formato de data e a pergunta final.

Eu executei dpkg-reconfigure locales adicionando adicionalmente o en_US.UTF-8 locale (já que eu vou escrever scripts usando diferentes localidades) e definindo o local padrão para de_DE.UTF-8 novamente, no entanto, o comportamento não mudou.

O que pode estar errado na minha configuração / Como corrijo isso? O objetivo é obter mensagens limpas e localizadas (em alemão).

EDIT: informações adicionais

Existem 2 variáveis de ambiente relacionadas a localidade definidas:

LANG=de_DE.UTF-8
GDM_LANG=de_DE.utf8

O conteúdo de /etc/default/locale é:

#  File generated by update-locale
LANG=de_DE.UTF-8

locale -a me dá:

C
C.UTF-8
de_DE.utf8
en_US.utf8
POSIX

O mesmo comportamento está presente em ambos, no terminal tty e no terminal GUI.

Experimentalmente, tentei definir manualmente algumas variáveis de ambiente:

export LC_MESSAGES='de_DE.UTF-8'
export LC_RESPONSE='de_DE.UTF-8'
export LC_TIME='de_DE.UTF-8'
mkfs.ext4 /dev/sdb7 -L 'tmp-rofs'

Mas o mesmo problema ainda permanece.

    
por Quasimodo's clone 18.07.2017 / 17:38

2 respostas

1

Você pode encontrar informações úteis sobre isso em wiki do Debian - Local

Manualmente :

edite o arquivo /etc/locale.gen e adicione suas configurações de localidade (um conjunto por linha), por exemplo:

 de_DE.UTF-8 UTF-8
 de_DE ISO-8859-1
 de_DE@euro ISO-8859-15

The supported locales are listed in /usr/share/i18n/SUPPORTED.

  • Run the command locale-gen

  • Run the command locale -a to verify the list of available locales; note >that the spellings change.

  • If you've upgraded to Lenny and you have leftover LANG=... content in >/etc/environment, you should comment it out.

  • To use the new settings with your programs, log out and back in.

As seguintes variáveis de ambiente afetam o comportamento relacionado ao local do sistema:

- LANG Determines the default locale in the absence of other locale related environment variables
- LANGUAGE
- LC_ADDRESS Convention used for formatting of street or postal addresses
- LC_ALL High precedence override for locale specific behaviour (overrides all other locale variables)
- LC_COLLATE Collation order
- LC_CTYPE Character classification and case conversion
- LC_MONETARY Monetary formatting
- LC_MEASUREMENT Default measurement system used within the region
- LC_MESSAGES Format of interactive words and responses
- LC_NUMERIC Numeric formatting
- LC_PAPER Default paper size for region
- LC_RESPONSE Determines how responses (such as Yes and No) appear in the local language
- LC_TELEPHONE Conventions used for representation of telephone numbers
- LC_TIME Date and time formats 
    
por 18.07.2017 / 17:54
0

Depois de virar a internet de cabeça para baixo, descobri que parece haver um bug no pacote e2fsprogs .

veja link

Eu não vou aceitar meu próprio anser por algum tempo ainda para dar às pessoas a chance de supor alguma correção de bug. A primeira (ou mais limpa) solução para resolver meu problema será aceita.

    
por 18.07.2017 / 18:45