Impossibile impostare LC_CTYPE sulle impostazioni internazionali predefinite: Nessun file o directory di questo tipo

27

Ho la domanda esatta come questa ma non c'è soluzione. Ho provato ma non funziona

Come posso risolvere il problema relativo alla mia lingua?

$ 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

Questo a causa di en_US.UTF-8 e della mancata corrispondenza di en_US.utf8?

Come risolvere?

    
posta Lucas 22.03.2015 - 10:57

8 risposte

37

Apri il terminale e attiva il seguente comando:

export LC_ALL="en_US.UTF-8"
    
risposta data Nazar 24.03.2016 - 18:23
17

Questo stesso problema (LC_CTYPE = UTF-8, che è errato) può accadere quando si effettua il login su ssh da un Mac a un box Linux, e il terminale imposta automaticamente le variabili d'ambiente. C'è una casella di controllo per questo. Deselezionalo e sei a posto. In iTerm è nella scheda del profilo- & gt; Terminal.

    
risposta data raarts 28.05.2016 - 14:38
13

Ho avuto il problema simile e ho aggiunto le righe seguenti nel mio file /etc/default/locale :

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

L'ho preso da questo post: Come posso risolvere il mio problema di localizzazione?

    
risposta data san1512 14.03.2016 - 15:58
8

solo con questo lavoro per me

sudo dpkg-reconfigure locales
sudo locale-gen
    
risposta data Jonathan Rodriguez 11.05.2018 - 00:03
6

L'output del comando locale indica che hai questa riga errata nel tuo ambiente:

LC_CTYPE="UTF-8"

("UTF-8" non è un nome di locale valido.)

Generalmente viene da /etc/default/locale . Si prega di rimuovere quella linea, se è lì, e relogin.

Se non viene da lì, può provenire dalla configurazione della tua shell, o se sei loggato in remoto tramite SSH, dalla configurazione del computer client.

    
risposta data Gunnar Hjalmarsson 22.03.2015 - 11:39
2

Il file / etc / default / locale può avere linee aggiuntive (ma non necessarie): Il file di esempio può avere questo aspetto:

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

Per ordinare e generare e riconfigurare correttamente locales, rimuovi o commenta tutte le righe da questo file eccetto:

LANG=en_US.UTF-8

Il file dovrebbe finalmente apparire come:

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

Dopodiché, esegui dpkg-reconfigure locales , seleziona en_US.UTF-8 quando ti viene richiesto di selezionare le impostazioni internazionali e dovresti andare. Riceverai un messaggio Generation complete. al termine del processo.

    
risposta data Ambar 27.08.2016 - 08:54
2
export LC_ALL="en_US.UTF-8"
export LC_CTYPE="en_US.UTF-8"
sudo dpkg-reconfigure locales
    
risposta data Hardik Gajjar 04.04.2018 - 12:39
1

Questo comando mi ha salvato la vita

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
    
risposta data Taras Vaskiv 18.03.2018 - 20:44

Leggi altre domande sui tag