Lokalisierung
Lokalisierung (l10n) bezeichnet die Anpassung des Systems an Sprache, Region und kulturelle Konventionen — Datums- und Zahlenformate, Währungssymbole, Zeichenkodierung.
Locale-Variablen
Abschnitt betitelt „Locale-Variablen“Allen Linux-Systemen gemeinsam ist ein Satz von Umgebungsvariablen zur Steuerung der Lokalisierung:
| Variable | Bedeutung |
|---|---|
LANG | Standardsprache — setzt alle LC_*-Variablen als Basis |
LC_MESSAGES | Sprache von Programm-Ausgaben und Fehlermeldungen |
LC_TIME | Datums- und Uhrzeitformate |
LC_NUMERIC | Zahlenformate (Dezimaltrennzeichen, Tausendertrennzeichen) |
LC_MONETARY | Währungsformate |
LC_COLLATE | Sortierreihenfolge von Zeichenketten |
LC_CTYPE | Zeichenklassifizierung (Groß-/Kleinschreibung, Umlaute) |
LC_PAPER | Papierformat (A4 vs. Letter) |
LC_ADDRESS | Adressformat |
LC_TELEPHONE | Telefonformat |
LC_MEASUREMENT | Maßeinheiten (metrisch vs. imperial) |
LC_ALL | Überschreibt alle anderen LC-Variablen — nur für Tests |
LANG setzt alle LC_*-Variablen als Grundlage. Einzelne LC_*-Variablen überschreiben den LANG-Wert für ihren Bereich.
Typische gemischte Konfiguration (englische Oberfläche, deutsche Formate):
LANG=en_US.UTF-8LC_NUMERIC=de_DE.UTF-8LC_TIME=de_DE.UTF-8LC_MONETARY=de_DE.UTF-8LC_PAPER=de_DE.UTF-8LC_MEASUREMENT=de_DE.UTF-8Aktuelle Einstellungen anzeigen
Abschnitt betitelt „Aktuelle Einstellungen anzeigen“locale # alle aktiven LC_*-Variablenlocale -a # alle installierten Lokalisierungenlocale -k LC_TIME # Formatdetails einer Kategorie
# Kategorie temporär für einen Befehl überschreibenLC_TIME=en_US.UTF-8 dateLokalisierungen einrichten
Abschnitt betitelt „Lokalisierungen einrichten“Schritt 1 — Locale generieren
Abschnitt betitelt „Schritt 1 — Locale generieren“Debian/Ubuntu:
# /etc/locale.gen — Kommentarzeichen vor gewünschten Locales entfernen:# de_DE.UTF-8 UTF-8# en_US.UTF-8 UTF-8
sudo locale-gen # Locales erzeugenlocale -a # Ergebnis prüfenRHEL/Fedora:
# Sprachpakete installierensudo dnf install glibc-langpack-de glibc-langpack-en# oder alle auf einmal:sudo dnf install glibc-all-langpacksArch Linux:
# /etc/locale.gen bearbeiten, dann:sudo locale-genSchritt 2 — Systemweite Defaults setzen
Abschnitt betitelt „Schritt 2 — Systemweite Defaults setzen“Die Datei /etc/locale.conf enthält die systemweiten Standardwerte:
LANG=de_DE.UTF-8LC_TIME=de_DE.UTF-8Alternativ mit localectl (empfohlen auf systemd-Systemen):
sudo localectl set-locale LANG=de_DE.UTF-8sudo localectl set-locale LC_TIME=de_DE.UTF-8localectl
Abschnitt betitelt „localectl“localectl ist das systemd-Werkzeug für Locale und Tastatur-Layout:
localectl # aktuellen Status anzeigenlocalectl list-locales # alle verfügbaren Localeslocalectl set-locale LANG=de_DE.UTF-8Benutzerspezifische Einstellungen
Abschnitt betitelt „Benutzerspezifische Einstellungen“Benutzer können Locale-Einstellungen in ~/.profile oder ~/.bashrc überschreiben:
export LANG=de_DE.UTF-8export LC_TIME=de_DE.UTF-8Je nach Distribution wird auch ~/.config/locale.conf unterstützt ($XDG_CONFIG_HOME/locale.conf).