Respostas:
Coloquei a seguinte configuração de localidade relacionada em /etc/bashrc
(para todos os usuários bash
):
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_COLLATE=C
export LC_CTYPE=en_US.UTF-8
então corra:
source /etc/bashrc
ou faça logoff e logon.
lang.sh
e funcionou 👍.
Corre
yum reinstall glibc-common
e verifique se nenhum processo está excluindo os arquivos /usr/lib/locale/locale-archive.*.
glibc-langpack-<language>
, por exemplo glibc-langpack-en
.
Podes tentar
export LANG=en_US
Ou defina-o como algo semelhante. Se isso resolver o problema para você, você poderá persistir modificando o perfil do bash.
Eu estava recebendo o mesmo erro no MacOS. Quando você ssh para uma caixa Linux, eles se recusam a configurar um UTF-8
código de idioma. Você pode ver as diferenças na configuração da localidade executando o locale
comando no seu terminal MacOS e na caixa Linux.
Para corrigir este erro, abra o terminal -> preferências -> perfis -> Avançado e desabilitado Set locale environment variables on startup
no seu mac.
Agora, quando você executa locale
no mac. você pode ver que essa mudança definiu o LC_CTYPE="C"
que eraLC_CTYPE="UTF-8"
com a configuração anterior.
você terá que fechar seu terminal para ter esse efeito e agora faça login na sua caixa Linux e execute yum update
.
Espero que ajude :)
Se você usou o SSH para conectar-se a este host a partir de uma máquina desktop, é comum /etc/ssh/sshd_config
conter
AcceptEnv LANG LC_*
que permite que os clientes propaguem os valores dessas variáveis de ambiente em novas sessões. No entanto, isso fará com que as variáveis de localidade sejam configuradas novamente para esvaziar dentro da sua sessão SSH no servidor que você está configurando, se o local não for o primeiro configurado corretamente NA SUA MÁQUINA DE DESKTOP .
Consertar:
Por exemplo, na janela do Windows 10 Ubuntu Shell, faça primeiro ( NOTA: altere todas as entradas abaixo para corresponder ao seu código do idioma se não for "en_US.UTF-8" ):
sudo locale-gen en_US.UTF-8
sudo dpkg-reconfigure locales
Em seguida, feche a janela do shell do Ubuntu e reabra e, em seguida, SSH no servidor que você está tentando configurar e veja se está tudo bem agora ...
Caso contrário, faça o SSH no seu servidor e faça:
vi /etc/profile.d/custom.lang.sh
Em seguida, pressione I
para entrar no modo "inserir". Em seguida, cole as entradas abaixo. Em seguida, ZZ
para salvar e sair:
## US English ##
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export LC_CTYPE=en_US.UTF-8
Em seguida, execute o seguinte:
source /etc/profile.d/lang.sh
source /etc/profile.d/custom.lang.sh
Então:
reboot
Veja se isso faz com que tudo pare de reclamar dos vars de localidade!
/etc/profile.d/lang.sh
e não para o/etc/bashrc
qual provavelmente será substituído por uma atualização.