Locales unter Ubuntu konfigurieren

Aus Thomas-Krenn-Wiki
Wechseln zu: Navigation, Suche

Dieser Artikel beschreibt wie die Locales (Spracheinstellungen) in Ubuntu auf der Kommandozeile konfiguriert werden können. Einen ähnlichen Artikel gibt es auch für Debian: Perl warning Setting locale failed unter Debian. Die folgenden Informationen wurden unter Ubuntu 14.04 (sowie 11.10) getestet.

Aktuelle Einstellungen anzeigen lassen

$ locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.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=

Verfügbare Locales anzeigen

$ locale -a
C
C.UTF-8
de_AT.utf8
de_BE.utf8
de_CH.utf8
de_DE.utf8
de_LI.utf8
de_LU.utf8
en_AG
en_AG.utf8
...
POSIX

Wenn eine Locale nicht in der Liste aufscheint, muss diese generiert werden.

$ sudo locale-gen fr_FR.UTF-8
Generating locales...
  fr_FR.UTF-8... done
Generation complete.

Eine Liste aller verfügbaren locales gibt es in der folgenden Datei: /usr/share/i18n/SUPPORTED

Locales anpassen

In der Datei /etc/default/locale sind die Default Einstellungen hinterlegt.

$ cat /etc/default/locale 
LANG=en_US.UTF-8

Diese Datei kann entweder manuell angepasst werden, oder mit dem Tool update-locale aktualisiert werden.

# update-locale LANG=de_DE.UTF-8

Einen Überblick über alle LC_* Umgebungsvariablen finden Sie in [1].

Nützlich ist zum Beispiel wenn man ein System auf Deutsch betreiben möchte, jedoch die Fehler- und Systemmeldungen auf Englisch haben möchte. Dies ist bei der Fehlersuche oft hilfreich. In diesem Fall wäre folgende Einstellung in /etc/default/locale möglich:

 LANG=de_DE.UTF-8
 LC_MESSAGES=POSIX

Die Variable LC_MESSAGES beeinflusst auch die Sprache des User Interfaces bzw. des Window-Managers.[2] Datums- und Zahlenangaben sind von einer Umstellung von LC_MESSAGES aber nicht betroffen.

Keine locale gesetzt

Es kann vorkommen, dass auf Systemen keine locale gesetzt ist.

Dies erkennt man daran, dass die Datei /etc/default/locale nicht existiert.

Weiters gibt das locale -a Kommando folgendes aus:

locale -a
C
C.UTF-8
POSIX

In diesem Fall muss man wie folgt vorgehen:

  1. Locale generieren
    • sudo locale-gen de_DE.UTF-8
  2. Locale setzen, dies generiert auch die Datei /etc/default/locale.
    • update-locale LANG=de_DE.UTF-8
  3. Danach das System neu starten oder eine neue Konsole öffnen.

Einzelnachweis

  1. Ubuntu Community Documentation: Locale (help.ubuntu.com)
  2. Region & Language (wiki.gnome.org)


Foto Christoph Mitasch.jpg

Autor: Christoph Mitasch

Christoph Mitasch arbeitet in der Abteilung Web Operations & Knowledge Transfer bei Thomas-Krenn. Er ist für die Betreuung und Weiterentwicklung der Webshop Infrastruktur zuständig. Seit einem Studienprojekt zum Thema Hochverfügbarkeit und Daten Replikation unter Linux beschäftigt er sich intensiv mit diesem Themenbereich. Nach einem Praktikum bei IBM Linz schloss er sein Diplomstudium „Computer- und Mediensicherheit“ an der FH Hagenberg ab. Er wohnt in der Nähe von Linz und ist neben der Arbeit ein begeisterter Marathon-Läufer und Jongleur, wo er mehrere Weltrekorde in der Team-Jonglage hält.


Das könnte Sie auch interessieren

E-Mail Updatebenachrichtigung mit apticron
Hibernate (Ruhezustand) in Ubuntu 12.04 aktivieren
Thomas-Krenn Ubuntu Repository