Não é possível definir LC_CTYPE como localidade padrão: nenhum arquivo ou diretório

32

Eu tenho a pergunta exata como esta, mas não há solução. Eu tentei, mas não funciona

Como corrijo meu problema de localidade?

$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE=UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

$ locale -a
locale: Cannot set LC_CTYPE to default locale: No such file or directory
C
C.UTF-8
en_US.utf8
POSIX

É por causa da incompatibilidade en_US.UTF-8 e en_US.utf8?

Como consertar?

    
por Lucas 22.03.2015 / 10:57

9 respostas

40

Abra o terminal e dispare o comando abaixo:

export LC_ALL="en_US.UTF-8"
    
por Nazar 24.03.2016 / 18:23
21

Esse mesmo problema (LC_CTYPE = UTF-8, que está errado) pode acontecer quando você faz o login em ssh de um Mac para uma caixa linux, e seu terminal automaticamente define variáveis de ambiente. Há uma caixa de seleção para isso. Desmarque isso e você está pronto para ir. No iTerm, ele está na guia Terminal e & gt ;.

    
por raarts 28.05.2016 / 14:38
17

Eu tive o problema semelhante e adicionei as linhas abaixo no meu arquivo /etc/default/locale :

LC_CTYPE="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LANG="en_US.UTF-8"

Eu peguei este post: Como corrijo meu problema de localidade?

    
por san1512 14.03.2016 / 15:58
10

apenas com esse trabalho para mim

sudo dpkg-reconfigure locales
sudo locale-gen
    
por Jonathan Rodriguez 11.05.2018 / 00:03
6

A saída do comando locale indica que você tem esta linha incorreta em seu ambiente:

LC_CTYPE="UTF-8"

("UTF-8" não é um nome de local válido.)

Geralmente vem de /etc/default/locale . Por favor, remova essa linha, se estiver lá, e relogie.

Se não vier de lá, ele pode vir da configuração do seu shell, ou se você estiver logado remotamente via SSH, a partir da configuração da máquina cliente.

    
por Gunnar Hjalmarsson 22.03.2015 / 11:39
2

O arquivo / etc / default / locale pode ter linhas adicionais (mas desnecessárias): Exemplo de arquivo pode ser assim:

#  File generated by update-locale
LANG=en_US.UTF-8
LANGUAGE="en_IN:en

Para classificar e gerar e reconfigurar com êxito as localidades, remova ou comente todas as linhas desse arquivo, exceto:

LANG=en_US.UTF-8

O arquivo deve finalmente se parecer com:

#  File generated by update-locale
LANG=en_US.UTF-8
# LANGUAGE="en_IN:en

Depois disso, execute dpkg-reconfigure locales , selecione en_US.UTF-8 quando solicitado para selecionar a localidade, e você deve estar pronto para ir. Você receberá uma mensagem Generation complete. quando o processo estiver concluído.

    
por Ambar 27.08.2016 / 08:54
2

Este comando salvou minha vida

sudo echo "LC_ALL=en_US.UTF-8" >> /etc/environment
sudo echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
sudo echo "LANG=en_US.UTF-8" > /etc/locale.conf
sudo locale-gen en_US.UTF-8
    
por Taras Vaskiv 18.03.2018 / 20:44
2
export LC_ALL="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
sudo dpkg-reconfigure locales
    
por Hardik Gajjar 04.04.2018 / 12:39
0

Consegui fazer isso sozinho ao migrar arquivos de ponto de diretório inicial para uma nova máquina, e não consegui identificar a causa por algum tempo devido à pesquisa de arquivos para LC_ , mas não LOC .

O arquivo ~/.bashrc que eu copiei tinha o seguinte:

export LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale

(o valor particular aqui foi devido a experiências anteriores com o GNU Guix na máquina antiga; mas o fato relevante é simplesmente que a variável de ambiente foi definida para um caminho agora inválido).

Isso resultou no seguinte erro ao executar vários programas:

Warning: locale not supported by C library, locale unchanged

E esses erros ao executar locale :

locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

Remover (ou comentar) a linha LOCPATH resolveu meus problemas.

    
por phils 25.10.2018 / 01:08

Tags