Algumas variáveis de ambiente são necessárias para suporte ao idioma nativo. Configurá-las adequadamente resulta em:
A saída gerada de aplicativos sendo traduzida para seu idioma nativo
A classificação correta dos caracteres em letras, dígitos e outras classes. Isso é necessário para o bash aceitar adequadamente caracteres não ASCII em linhas de comando em localidades não inglesas
A sequência de ordenação alfabética correta para o país
O apropriado tamanho padrão de papel
A formatação correta dos valores monetário, hora e data
        Substitua <ll> abaixo
        pelo código de duas letras para teu idioma desejado (por exemplo,
        en) e <CC> pelo código de duas letras
        para o país apropriado (por exemplo, GB). <charmap> deveria ser
        substituído pelo mapa de caracteres canônico para a tua localidade
        escolhida. Modificadores opcionais, tais como @euro, também podem estar presentes.
      
A lista de todas as localidades suportadas pela Glibc pode ser obtida executando-se o seguinte comando:
locale -a
        Mapas de caracteres podem ter um número de apelidos, por exemplo,
        ISO-8859-1 também é referenciado como
        iso8859-1 e iso88591. Alguns aplicativos não conseguem lidar com
        os vários sinônimos corretamente (por exemplo, exigem que
        UTF-8 seja escrito como UTF-8, não utf8), de
        forma que é mais seguro, na maioria dos casos, escolher o nome
        canônico para uma localidade específica. Para determinar o nome
        canônico, execute o seguinte comando, onde <nome da localidade> é a saída
        gerada dada por locale
        -a para a tua localidade preferida (en_GB.iso88591 no nosso exemplo).
      
LC_ALL=<nome da localidade> mapa de caracteres da localidade
      
        Para a localidade en_GB.iso88591, o
        comando acima imprimirá:
      
ISO-8859-1
      
        Isso resulta em uma configuração final de localidade de en_GB.ISO-8859-1. É importante que a localidade
        encontrada usando-se a heurística acima seja testada antes que seja
        adicionada aos arquivos de iniciação do Bash:
      
LC_ALL=<nome da localidade> locale language LC_ALL=<nome da localidade> locale charmap LC_ALL=<nome da localidade> locale int_curr_symbol LC_ALL=<nome da localidade> locale int_prefix
Os comandos acima deveriam imprimir o nome do idioma, a codificação de caracteres usada pela localidade, a moeda local, e o prefixo para discar antes do número de telefone para a finalidade de se alcançar o país. Se quaisquer dos comandos acima falhar com uma mensagem similar àquela mostrada abaixo, isso significa que tua localidade ou não foi instalada no Capítulo 8 ou não é suportada pela instalação padrão da Glibc.
locale: Cannot set LC_* to default locale: No such file or directory
      Se isso acontecer, você deveria ou instalar a localidade desejada usando o comando localedef, ou considerar escolher uma localidade diferente. As instruções posteriores assumem que não existem tais mensagens de erro originárias da Glibc.
Outros pacotes também podem funcionar incorretamente (mas, possivelmente não necessariamente exibam quaisquer mensagens de erro) se o nome da localidade não corresponder às expectativas deles. Nesses casos, investigar-se como outras distribuições do Linux suportam tua localidade poderia fornecer alguma informação útil.
        Uma vez que as configurações adequadas de localidade tenham sido
        determinadas, crie o arquivo /etc/locale.conf:
      
cat > /etc/locale.conf << "EOF"
LANG=<ll>_<CC>.<mapa_caracteres><@modificadores>
EOF
      
        O aplicativo de shell /bin/bash (aqui chamado de
        “o shell”) usa
        uma coleção de arquivos de iniciação para ajudar a criar o ambiente
        para execução. Cada arquivo tem um uso específico e pode afetar o
        login e os ambientes interativos diferentemente. Os arquivos no
        diretório /etc fornecem configurações
        globais. Se arquivos equivalentes existirem no diretório inicial,
        eles poderão substituir as configurações globais.
      
        Um shell interativo de login é iniciado depois de um login
        bem-sucedido, usando /bin/login, lendo o arquivo
        /etc/passwd. Um shell interativo sem
        login é iniciado na linha de comando (por exemplo, [prompt]$/bin/bash). Um shell não interativo
        geralmente está presente quando um conjunto de comandos sequenciais
        de shell está em execução. Não é interativo porque está processando
        um conjunto de comandos sequenciais e não aguardando a entrada do(a)
        usuário(a) entre os comandos.
      
        Os shells de login geralmente não são afetados
        pelas configurações em /etc/locale.conf. Crie o /etc/profile para ler as
        configurações de localidade a partir de /etc/locale.conf e exportá-las, mas defina a
        localidade C.UTF-8 se executar no
        console do Linux (para evitar que aplicativos emitam caracteres que o
        console do Linux não consiga renderizar):
      
cat > /etc/profile << "EOF"
# Inicia /etc/profile
for i in $(locale); do
  unset ${i%=*}
done
if [[ "$TERM" = linux ]]; then
  export LANG=C.UTF-8
else
  source /etc/locale.conf
  for i in $(locale); do
    key=${i%=*}
    if [[ -v $key ]]; then
      export $key
    fi
  done
fi
# Termina /etc/profile
EOF
      
        Observe que você consegue modificar o /etc/locale.conf com o utilitário localectl do systemd. Para usar o
        localectl para o
        exemplo acima, execute:
      
localectl set-locale LANG="<ll>_<CC>.<mapa_caracteres><@modificadores>"
      
        Você também pode especificar outras variáveis de ambiente específicas
        de idioma, tais como LANG; LC_CTYPE; LC_NUMERIC; ou
        qualquer outra variável de ambiente oriunda da saída gerada de
        locale. Apenas
        separe-as com um espaço. Um exemplo onde LANG é configurada como en_US.UTF-8, porém
        LC_CTYPE é configurada apenas como en_US
        é:
      
localectl set-locale LANG="en_US.UTF-8" LC_CTYPE="en_US"
        Por favor, observe que o comando localectl não funciona no ambiente chroot. Ele somente pode ser usado depois que o sistema LFS for inicializado com o systemd.
        As localidades C (padrão) e en_US (aquele recomendado para usuários(as) do
        inglês dos Estados Unidos da América do Norte) são diferentes.
        C usa o conjunto de caracteres de 7 bits
        US-ASCII e trata bytes com o bit de ordem alta configurado como
        caracteres inválidos. Esse é o porquê, por exemplo, do comando
        ls substitui-los por
        pontos de interrogação nessa localidade. Também, uma tentativa de
        enviar mensagem com tais caracteres a partir do Mutt ou do Pine
        resulta em mensagens de não conformidade com RFC sendo enviadas (o
        conjunto de caracteres na mensagem de saída é indicado como
        unknown 8-bit). É sugerido que
        você use a localidade C somente se tiver
        certeza de que nunca precisará de caracteres de 8 bits.