So beheben Sie einen Gebietsschemafehler

So beheben Sie einen Gebietsschemafehler

Ich habe gerade eine Neuinstallation von Ubuntu mit durchgeführt debootstrap. Dabei sudo aptitude upgradeerhalte ich diese Fehlermeldung:

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

Kann mir bitte jemand sagen, wie ich dieses Problem lösen kann? Ich sehe online viele ähnliche Beiträge, aber keiner davon scheint das Problem zu lösen.

Ich verwende Ubuntu 14.04 LTS. Danke.


Zu Ihrer Information:

$ 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

Und

$ 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=

Antwort1

Ein Ubuntu-Desktop sollte mit UTF-8-Kodierung eingerichtet werden. Aus irgendeinem Grund versucht Ihr System, das Latin1-Gebietsschema en_US.ISO-8859-1 festzulegen. Das sollten Sie wirklich ändern.

Möglicherweise spielt sich die Handlung in ab /etc/default/locale.

Wo immer es passiert, ändern Sie es in

LANG=en_US.UTF-8

Andernfalls werden Sie mit verschiedenen standortbezogenen Überraschungen konfrontiert.

Antwort2

Eine dauerhafte Lösung für das Gebietsschemaproblem besteht darin, die Gebietsschemavariablen in Ihrem zu exportieren ~/.bash_profile. Sie können auch /etc/profileeine Datei anstelle von verwenden .bash_profile, damit die Änderung für alle Benutzer im System wirksam wird.

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

Vergessen Sie nicht, eine neue Shell zu starten oder manuell auszuführen source ~/.bash_profile.

Antwort3

Das debootstraperstellt kein Gebietsschema. Also verwenden wir etwas anderes als Gebietsschema. Verwenden Sie diesen Befehl:

sudo locale-gen en_US.ISO-8859-1

Ich hoffe das hilft!

Antwort4

Zur Instanz/Maschine hinzufügen LC_ALL="en_US.UTF-8"und dann neu starten/etc/environment

Weitere Informationen finden Sie in diesem Blog

http://www.pixelninja.me/wie-behebt-man-ungültige-Gebietsschemaeinstellungen-in-ubuntu-14-04-in-der-Cloud/

verwandte Informationen