comment corriger une erreur locale

11

Je viens de faire une nouvelle installation d'ubuntu en utilisant debootstrap. Quand je le fais sudo aptitude upgrade, je reçois ce message d'erreur:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = "en_US:en",
    LC_ALL = (unset),
    LANG = "en_US.ISO-8859-1"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
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

Quelqu'un peut-il me dire comment résoudre ce problème? Je vois beaucoup de messages similaires à celui-ci en ligne, mais aucun ne semble résoudre le problème.

J'utilise Ubuntu 14.04 LTS. Merci.


Pour info:

$ locale -a
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.iso88591
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

et

$ locale
LANG=en_US.ISO-8859-1
LANGUAGE=en_US:en
LC_CTYPE="en_US.ISO-8859-1"
LC_NUMERIC="en_US.ISO-8859-1"
LC_TIME="en_US.ISO-8859-1"
LC_COLLATE="en_US.ISO-8859-1"
LC_MONETARY="en_US.ISO-8859-1"
LC_MESSAGES="en_US.ISO-8859-1"
LC_PAPER="en_US.ISO-8859-1"
LC_NAME="en_US.ISO-8859-1"
LC_ADDRESS="en_US.ISO-8859-1"
LC_TELEPHONE="en_US.ISO-8859-1"
LC_MEASUREMENT="en_US.ISO-8859-1"
LC_IDENTIFICATION="en_US.ISO-8859-1"
LC_ALL=
user1527227
la source
1
Cela a déjà été répondu ici askubuntu.com/questions/162391/how-do-i-fix-my-locale-issue Résumé: définir LC_ALL sur / etc / default / locale
h7r

Réponses:

6

Le debootstrapne crée pas de paramètres régionaux. Nous utilisons donc autre chose comme locale. Utilisez cette commande:

sudo locale-gen en_US.ISO-8859-1

J'espère que ça aide!


la source
Non, aptitudec'est aussi valable. Votre réponse ne donnera aucune modification au PO.
Danatela
2
Bien que cela puisse résoudre l'erreur locale, cela vous donne un système avec l'encodage latin1, qui ne convient pas sur Ubuntu.
Gunnar Hjalmarsson
En outre, dans ~/.kde.env/setlocale.sh, vous définissezexport LANG=en_US.UTF-8
user1527227
11

Un bureau Ubuntu doit être configuré avec le codage UTF-8. Pour une raison quelconque, votre système essaie de définir les paramètres régionaux latin1 en_US.ISO-8859-1. Vous devriez vraiment changer cela.

Peut-être que le réglage a lieu dans /etc/default/locale.

Partout où cela se produit, changez-le en

LANG=en_US.UTF-8

ou bien vous rencontrerez diverses surprises liées aux paramètres régionaux.

Gunnar Hjalmarsson
la source
Êtes-vous sûr que c'est celui à utiliser? Comment le sais-tu?
user1527227
@ user1527227: Eh bien, presque. ;) Parce que AFAIK en_US.UTF-8est pré-généré sur chaque bureau Ubuntu. Mais vous pouvez facilement le vérifier en exécutant la locale -acommande. Ce serait bien si vous éditiez la question et ajoutiez la sortie de cette commande.
Gunnar Hjalmarsson
j'ai ajouté les informations que vous avez demandées.
user1527227
1
@ user1527227: Ok, et là on peut le voir en_US.utf8dans la locale -asortie. Mon conseil pour passer de en_US.ISO-8859-1la en_US.UTF-8stands.
Gunnar Hjalmarsson
Je vous remercie. Savez-vous comment faire exactement cela? Je ne vois pas /etc/default/locale. Puis-je simplement courir sudo locale-gen en_US.utf8?
user1527227
8

La solution permanente du problème des paramètres régionaux consiste à exporter les variables de paramètres régionaux dans un .bash_profilefichier. Vous pouvez également utiliser le /etc/profilefichier au lieu de .bash_profile.

echo "export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8">>~/.bash_profile

Ne pas oublier de sourcele .bash_profileet suivez le scénario dans la configuration facile.

Voici le script qui résout le problème des paramètres régionaux

Ajeet Khan
la source
3

Cela fonctionne pour moi.

  1. export LANGUAGE=en_US.UTF-8
  2. export LANG=en_US.UTF-8
  3. export LC_ALL=en_US.UTF-8
  4. sudo locale-gen en_US.UTF-8
  5. sudo dpkg-reconfigure locales
Airat Kazanbaev
la source
1

Ce qui a fonctionné pour moi est le suivant:

export LANGUAGE=en_US.UTF-8 export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8 sudo locale-gen en_US.UTF-8 sudo dpkg-reconfigure locales

Pour une solution permanente, vous pouvez mettre

export LANGUAGE=en_US.UTF-8 export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8

dans votre .zshrcou.bashrc

Réf.

  1. https://jee-appy.blogspot.com/2016/02/set-locale-on-ubuntu-permanent-solution.html
  2. https://www.thomas-krenn.com/en/wiki/Perl_warning_Setting_locale_failed_in_Debian
alpha_989
la source