105 votes

Impossible de définir LC_CTYPE à la locale par défaut : Aucun fichier ou répertoire de ce type

J'ai exactement la même question que celle-ci mais il n'y a pas de solution. J'ai essayé mais ça ne marche pas

Comment puis-je résoudre le problème de ma langue ?

$ 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

Est-ce à cause du décalage entre en_US.UTF-8 et en_US.utf8 ?

Comment réparer ?

0voto

phils Points 101

J'ai réussi à provoquer ce problème moi-même lors de la migration des fichiers point d'un répertoire personnel vers une nouvelle machine, et je n'ai pas réussi à identifier la cause pendant un certain temps parce que je cherchais dans les fichiers les mots suivants LC_ mais pas LOC .

El ~/.bashrc Le fichier que j'ai copié était le suivant :

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

(la valeur particulière ici était due à des expériences antérieures avec GNU Guix sur l'ancienne machine ; mais le fait pertinent est simplement que la variable d'environnement était définie sur un chemin maintenant invalide).

Cela a entraîné l'erreur suivante lors de l'exécution de divers programmes :

Warning: locale not supported by C library, locale unchanged

Et ces erreurs lors de l'exécution 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

La suppression (ou la mise en commentaire) de l'élément LOCPATH a résolu mes problèmes.

0voto

Andrew DeFaria Points 141

Après avoir essayé toutes sortes de choses pour résoudre ce problème, j'ai finalement compris : et si le problème se trouvait de l'autre côté du scp ? Vous voyez, j'ai rencontré ce problème lorsque j'ai essayé de scp un fichier vers mon serveur dans le nuage. Les deux tournent sous Ubuntu. J'ai essayé toutes ces choses ci-dessus comme le réglage de LC_ALL et de la locale, etc. mais rien n'a fonctionné. Ce n'est que lorsque j'ai compris qu'il fallait faire la même chose du côté du serveur que j'ai résolu le problème.

Je me suis donc connecté à mon serveur et j'ai exécuté :

sudo pkg-reconfigure locales

et maintenant quand je scp de mon bureau à la maison vers mon serveur dans le nuage je ne vois plus ces erreurs de locale.

-1voto

Hosein Basafa Points 111

Il suffit d'exécuter ce qui suit :

sudo apt-get upgrade

il va générer toutes les localisations, puis définir la valeur par défaut sur US :

export LC_ALL="en_US.UTF-8"

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X