Antworten:
Ich habe die folgenden locale in Bezug auf Einstellung /etc/bashrc
(für alle Benutzer, bash
):
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_COLLATE=C
export LC_CTYPE=en_US.UTF-8
dann renne:
source /etc/bashrc
oder abmelden und anmelden.
lang.sh
und es funktioniert 👍.
Lauf
yum reinstall glibc-common
und dann stellen Sie sicher, dass kein Prozess die /usr/lib/locale/locale-archive.* Dateien löscht.
glibc-langpack-<language>
, zum Beispiel glibc-langpack-en
.
Ich war immer gleiche Fehler auf MacOS. Wenn Sie zu einer Linux-Box sshen, lehnen sie es ab, ein UTF-8
Gebietsschema einzurichten. Sie können die Unterschiede in der Gebietsschemaeinstellung sehen, indem Sie den locale
Befehl auf Ihrem MacOS-Terminal und der Linux-Box ausführen.
Um diesen Fehler zu beheben, öffnen Sie das Terminal -> Einstellungen -> Profile -> Erweitert und deaktivieren Sie es Set locale environment variables on startup
auf Ihrem Mac.
Nun , wenn Sie laufen locale
auf dem Mac. Sie können sehen, dass diese Änderung eingestellt wurde, LC_CTYPE="C"
die LC_CTYPE="UTF-8"
mit der vorherigen Einstellung war.
Sie müssen Ihr Terminal schließen, um diesen Effekt zu erzielen. Melden Sie sich jetzt bei Ihrer Linux-Box an und führen Sie es aus yum update
.
Ich hoffe es hilft :)
Wenn Sie SSH verwendet , um diesen Host von einem Desktop - Rechner zu verbinden, ist es üblich , /etc/ssh/sshd_config
enthält
AcceptEnv LANG LC_*
der es ermöglicht Kunden die Werte dieser Umgebungsvariablen in neue Sitzungen zu propagieren. Dies wird jedoch die locale Variablen verursacht Satz zurück zu sein in Ihrer SSH - Sitzung auf dem Server leeren Sie konfigurieren, wenn das Gebietsschema nicht zuerst richtig eingestellt ist auf Ihrem PC .
Reparieren:
Zum Beispiel in der Windows 10 Ubuntu Shell - Fenster, zuerst tun ( Hinweis: Alle Einträge unten ändern Sie Ihre locale anzupassen , wenn es nicht „en_US.UTF-8“ ist ):
sudo locale-gen en_US.UTF-8
sudo dpkg-reconfigure locales
Dann schließt Ubuntu-Shell-Fenster und wieder zu öffnen, und dann SSH in den Server versuchen Sie, zu konfigurieren und sehen, ob alles in Ordnung ist jetzt ...
Wenn nicht, dann SSH in Ihren Server und zu tun:
vi /etc/profile.d/custom.lang.sh
Dann traf I
„Insert“ -Modus zu gelangen. Dann fügen Sie die folgenden Einträge. Dann ZZ
zu speichern und zu beenden:
## US English ##
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export LC_CTYPE=en_US.UTF-8
Dann führen Sie die folgenden:
source /etc/profile.d/lang.sh
source /etc/profile.d/custom.lang.sh
Dann:
reboot
Sehen, ob das alles Stop macht beschweren sich über locale Vars!
/etc/profile.d/lang.sh
und nicht auf/etc/bashrc
die wahrscheinlich durch ein Update überschrieben werden.