No meu entendimento, uma localidade é apenas um conjunto de variáveis de ambiente que indicam o idioma e a região do sistema. Mas antes de podermos usá-lo, precisamos editar o arquivo locale.gen para indicar quais localidades você deseja usar e, em seguida, executar o comando locale-gen. Então, o que o locale-gen faz? Quais dados o local-gen gera? Como o Linux pode usar esses dados?
relate perguntas
-
Como eu faria minha máquina Linux parecer que está executando o Windows?
-
Existe um equivalente a cd - para cp ou mv?
-
execute o contêiner do docker como root
-
Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux
-
Como alterar permanentemente Ctrl + C para Ctrl + K no CentOS 7?
Não, isso é apenas parte da imagem. Uma "localidade" é, antes de mais nada, uma abstração de todas as configurações e informações específicas de um determinado local (um país, uma região etc.). Na prática, no Linux, a infraestrutura de localidade é fornecida pela biblioteca C (que, no Linux, costuma ser a GNU C Library ). Há várias coisas trabalhando juntas como parte dessa infraestrutura locale:
printf
família de funções formatará a saída de forma diferente dependendo da localidade (consulte printf(3) ).Para leitura adicional, recomendo a documentação da GNU C Library: 7 Locales and Internationalization .
locale-gen
gera (ou melhor, compila) as "informações de localidade" que mencionei acima, invocandolocaledef
. As informações de localidade estão presentes em um formato textual, que é fácil de editar, mas difícil de ler para o software (assim como o código-fonte do software).locale-gen
elocaledef
compilar essas informações em um formato binário que é mais fácil de ler e quais são os dados que a biblioteca C usará.Como esse formato binário pode ocupar muito espaço em disco, ele é gerado apenas para os locais realmente usados. Isso é o que você pode configurar em locale.gen.
Leia também as páginas de manual de
locale-gen
elocaledef
, elas explicam isso muito bem: locale-gen(8) , localedef(1) .