30 Spezielle Systemfunktionen #
In diesem Kapitel erhalten Sie zunächst Informationen zu den verschiedenen Softwarepaketen, zu den virtuellen Konsolen und zur Tastaturbelegung. Hier finden Sie Hinweise zu Software-Komponenten, wie bash
, cron
und logrotate
, da diese im Laufe der letzten Veröffentlichungszyklen geändert oder verbessert wurden. Selbst wenn sie nur klein sind oder als nicht besonders wichtig eingestuft werden, sollten die Benutzer ihr Standardverhalten ändern, da diese Komponenten häufig eng mit dem System verbunden sind. Das Kapitel endet mit einem Abschnitt mit sprach- und landesspezifischen Einstellungen (I18N und L10N).
30.1 Informationen zu speziellen Softwarepaketen #
Im folgenden Kapitel finden Sie grundlegende Informationen zu den folgenden Tools: bash
, cron
, logrotate
, locate
, ulimit
und free
.
30.1.1 Das Paket bash
und /etc/profile
#
Bash ist die Standard-System-Shell. Wenn sie als Anmelde-Shell verwendet wird, werden mehrere Initialisierungsdateien gelesen. Bash verarbeitet die entsprechenden Informationen in der Reihenfolge dieser Liste:
/etc/profile
~/.profile
/etc/bash.bashrc
~/.bashrc
Nehmen Sie benutzerdefinierte Einstellungen in ~/.profile
oder ~/.bashrc
vor. Um die richtige Verarbeitung der Dateien zu gewährleisten, müssen die Grundeinstellungen aus /etc/skel/.profile
oder /etc/skel/.bashrc
in das Home-Verzeichnis des Benutzers kopiert werden. Es empfiehlt sich, die Einstellungen aus /etc/skel
nach einer Aktualisierung zu kopieren. Führen Sie die folgenden Shell-Befehle aus, um den Verlust persönlicher Einstellungen zu vermeiden:
>
mv ~/.bashrc ~/.bashrc.old>
cp /etc/skel/.bashrc ~/.bashrc>
mv ~/.profile ~/.profile.old>
cp /etc/skel/.profile ~/.profile
Kopieren Sie anschließend die persönlichen Einstellungen erneut aus den *.old
-Dateien.
30.1.2 Das cron-Paket #
Mit cron
lassen Sie automatisch Kommandos im Hintergrund zu bestimmten Zeitpunkten ausführen. cron
greift auf speziell formatierte Zeittabellen zu, wobei bereits mehrere standardmäßige Tabellen in diesem Werkzeug enthalten sind. Bei Bedarf können die Benutzer auch benutzerdefinierte Tabellen angeben.
Die cron-Tabellen befinden sich im Verzeichnis /var/spool/cron/tabs
. /etc/crontab
dient als systemübergreifende cron-Tabelle. Geben Sie den Benutzernamen zur Ausführung des Befehls unmittelbar nach der Zeittabelle und noch vor dem Befehl ein. In Beispiel 30.1, „Eintrag in /etc/crontab“, wird root
eingegeben. Die paketspezifischen Tabellen in /etc/cron.d
weisen alle dasselbe Format auf. Informationen hierzu finden Sie auf der man-Seite zu cron
(man cron
).
1-59/5 * * * * root test -x /usr/sbin/atrun && /usr/sbin/atrun
Sie können /etc/crontab
nicht bearbeiten, indem Sie den Befehl crontab -e
bearbeiten. Die Datei muss direkt in einem Editor geladen, geändert und dann gespeichert werden.
Mehrere Pakte installieren Shell-Skripten in die Verzeichnisse /etc/cron.hourly
, /etc/cron.daily
, /etc/cron.weekly
und /etc/cron.monthly
, deren Ausführung durch /usr/lib/cron/run-crons
gesteuert wird. /usr/lib/cron/run-crons
wird alle 15 Minuten von der Haupttabelle (/etc/crontab
) ausgeführt. Hiermit wird gewährleistet, dass vernachlässigte Prozesse zum richtigen Zeitpunkt ausgeführt werden können.
Um die Skripten hourly
, daily
oder andere Skripten für regelmäßige Wartungsarbeiten zu benutzerdefinierten Zeiten auszuführen, entfernen Sie regelmäßig die Zeitstempeldateien mit /etc/crontab
-Einträgen (siehe Beispiel 30.2, „/etc/crontab: Entfernen der Zeitstempeldateien“ – u. a. wird hourly
vor jeder vollen Stunde und daily
einmal täglich um 2:14 Uhr entfernt usw.).
59 * * * * root rm -f /var/spool/cron/lastrun/cron.hourly 14 2 * * * root rm -f /var/spool/cron/lastrun/cron.daily 29 2 * * 6 root rm -f /var/spool/cron/lastrun/cron.weekly 44 2 1 * * root rm -f /var/spool/cron/lastrun/cron.monthly
Sie können auch DAILY_TIME
in /etc/sysconfig/cron
auf die Zeit einstellen, zu der cron.daily
gestartet werden soll. Mit MAX_NOT_RUN
stellen Sie sicher, dass die täglichen Aufgaben auch dann ausgeführt werden, wenn der Computer zur angegebenen DAILY_TIME
und auch eine längere Zeit danach nicht eingeschaltet ist. Die maximale Einstellung von MAX_NOT_RUN
sind 14 Tage.
Die täglichen Systemwartungsaufträge werden zum Zwecke der Übersichtlichkeit auf mehrere Skripts verteilt. Sie sind im Paket aaa_base
enthalten. /etc/cron.daily
enthält beispielsweise die Komponenten suse.de-backup-rpmdb
, suse.de-clean-tmp
oder suse.de-cron-local
.
30.1.3 Stoppen der Cron-Statusmeldungen #
Um die Email-Flut einzudämmen, die durch die Cron-Statusmeldungen entsteht, wird der Standardwert für SEND_MAIL_ON_NO_ERROR
in /etc/sysconfig/cron
bei neuen Installationen auf „no
“ (nein) eingestellt. Selbst mit der Einstellung "no
" (nein) wird die Cron-Datenausgabe weiterhin an die MAILTO
-Adresse gesendet, wie auf der man-Seite zu Cron beschrieben.
Bei einer Aktualisierung wird empfohlen, diese Werte gemäß Ihren Anforderungen einzustellen.
30.1.4 Protokolldateien: Paket logrotate #
Mehrere Systemdienste ( Daemons) zeichnen zusammen mit dem Kernel selbst regelmäßig den Systemstatus und spezielle Ereignisse in Protokolldateien auf. Auf diese Weise kann der Administrator den Status des Systems zu einem bestimmten Zeitpunkt regelmäßig überprüfen, Fehler oder Fehlfunktionen erkennen und die Fehler mit Präzision beheben. Die Protokolldateien werden in der Regel, wie von FHS angegeben, unter /var/log
gespeichert und werden täglich umfangreicher. Mit dem Paket logrotate
kann der Umfang der Dateien gesteuert werden. Weitere Informationen finden Sie im Section 3.3, “Managing log files with logrotate
”.
30.1.5 Der Befehl locate
#
locate
, ein Kommando zum schnellen Suchen von Dateien, ist nicht im Standardumfang der installierten Software enthalten. Falls gewünscht, können Sie das Paket mlocate
, den Nachfolger des Pakets findutils-locate
, installieren. Der Prozess updatedb
wird jeden Abend bzw. etwa 15 Minuten nach dem Booten des Systems gestartet.
30.1.6 Der Befehl ulimit
#
Mit dem Kommando ulimit
(user limits) ist es möglich, Begrenzungen für die Verwendung von Systemressourcen festzulegen und anzuzeigen. ulimit
ist besonders nützlich für die Begrenzung des verfügbaren Arbeitsspeichers für Anwendungen. Damit kann eine Anwendung daran gehindert werden, zu viele Systemressourcen zu reservieren und damit das Betriebssystem zu verlangsamen oder sogar aufzuhängen.
ulimit
kann mit verschiedenen Optionen verwendet werden. Verwenden Sie zum Begrenzen der Speicherauslastung die in Tabelle 30.1, „ulimit
: Einstellen von Ressourcen für Benutzer“ aufgeführten Optionen.
ulimit
: Einstellen von Ressourcen für Benutzer #
|
Die maximale nicht auslagerbare festgelegte Größe |
|
Die maximale Größe des virtuellen Arbeitsspeichers, der der Shell zur Verfügung steht |
|
Die maximale Größe des Stapels |
|
Die maximale Größe der erstellten Kerndateien |
|
Alle aktuellen Grenzwerte werden gemeldet |
Systemweite Standardeinträge werden unter /etc/profile
festgelegt. Die direkte Bearbeitung dieser Datei wird nicht empfohlen, da die Änderungen bei einem Systemupgrade überschrieben werden. Mit /etc/profile.local
können Sie die systemweiten Profileinstellungen anpassen. Benutzerspezifische Einstellungen sind unter ~USER/.profile
vorzunehmen.
ulimit
: Einstellungen in ~/.bashrc
## Limits maximum resident set size (physical memory): ulimit -m 98304 # Limits of virtual memory: ulimit -v 98304
Die Speicherzuteilungen müssen in KB erfolgen. Weitere Informationen erhalten Sie mit man bash
.
ulimit
ulimit
-Direktiven werden nicht von allen Shells unterstützt. PAM (z. B. pam_limits
) bietet umfassende Anpassungsfunktionen als Alternative zu ulimit
.
30.1.7 Der Befehl free
#
Das Kommando free
zeigt die Größe des insgesamt vorhandenen freien und verwendeten physischen Arbeitsspeichers und Auslagerungsspeichers im System sowie die vom Kernel verwendeten Puffer und den verwendeten Cache an. Das Konzept des verfügbaren Arbeitsspeichers geht auf Zeiten vor der einheitlichen Speicherverwaltung zurück. Bei Linux gilt der Grundsatz freier Arbeitsspeicher ist schlechter Arbeitsspeicher. Daher wurde bei Linux immer darauf geachtet, die Caches auszugleichen, ohne freien oder nicht verwendeten Arbeitsspeicher zuzulassen.
Der Kernel verfügt nicht direkt über Anwendungs- oder Benutzerdaten. Stattdessen verwaltet er Anwendungen und Benutzerdaten in einem Seiten-Cache. Falls nicht mehr genügend Arbeitsspeicher vorhanden ist, werden Teile auf der Swap-Partition oder in Dateien gespeichert, von wo aus sie mit dem Befehl mmap
abgerufen werden können. (siehe man mmap
).
Der Kernel enthält zusätzlich andere Caches, wie beispielsweise den slab-Cache, in dem die für den Netzwerkzugriff verwendeten Caches gespeichert werden. Dies erklärt die Unterschiede zwischen den Zählern in /proc/meminfo
. Die meisten, jedoch nicht alle dieser Zähler, können über /proc/slabinfo
aufgerufen werden.
Wenn Sie jedoch herausfinden möchten, wie viel RAM gerade verwendet wird, dann finden Sie diese Information in /proc/meminfo
.
30.1.8 man-Seiten und Info-Seiten #
Für einige GNU-Anwendungen (wie beispielsweise tar) sind keine man-Seiten mehr vorhanden. Verwenden Sie für diese Befehle die Option --help
, um eine kurze Übersicht über die info-Seiten zu erhalten, in der Sie detailliertere Anweisungen erhalten. Die Info-Seiten befinden sich im Hypertextsystem von GNU. Eine Einführung in dieses System erhalten Sie, wenn Sie info
info
eingeben. Info-Seiten können mit Emacs angezeigt werden, wenn Sie emacs
-f info
eingeben oder mit info
direkt in einer Konsole angezeigt werden. Sie können auch tkinfo, xinfo oder das Hilfesystem zum Anzeigen von info-Seiten verwenden.
30.1.9 Auswählen von man-Seiten über das Kommando man
#
Geben Sie man
MAN-SEITE ein, um eine man-Seite zu lesen. Wenn bereits eine man-Seite mit demselben Namen in anderen Abschnitten vorhanden ist, werden alle vorhandenen Seiten mit den zugehörigen Abschnittsnummern aufgeführt. Wählen Sie die aus, die Sie anzeigen möchten. Wenn Sie innerhalb einiger Sekunden keine Abschnittsnummer eingeben, wird die erste man-Seite angezeigt.
Zur Rückkehr zum standardmäßigen Systemverhalten legen Sie MAN_POSIXLY_CORRECT=1
in einer Shell-Initialisierungsdatei wie ~/.bashrc
fest.
30.1.10 Einstellungen für GNU Emacs #
GNU Emacs ist eine komplexe Arbeitsumgebung. In den folgenden Abschnitten werden die beim Starten von GNU Emacs verarbeiteten Dateien beschrieben. Weitere Informationen hierzu erhalten Sie online unter http://www.gnu.org/software/emacs/.
Beim Starten liest Emacs mehrere Dateien, in denen die Einstellungen für den Benutzer, den Systemadministrator und den Distributor zur Anpassung oder Vorkonfiguration enthalten sind. Die Initialisierungsdatei ~/.emacs
ist in den Home-Verzeichnissen der einzelnen Benutzer von /etc/skel
installiert. .emacs
wiederum liest die Datei /etc/skel/.gnu-emacs
. Zum Anpassen des Programms kopieren Sie .gnu-emacs
in das Home-Verzeichnis (mit cp /etc/skel/.gnu-emacs ~/.gnu-emacs
) und nehmen Sie dort die gewünschten Einstellungen vor.
.gnu-emacs
definiert die Datei ~/.gnu-emacs-custom
als custom-file
. Wenn Benutzer in Emacs Einstellungen mit den customize
-Optionen vornehmen, werden die Einstellungen in ~/.gnu-emacs-custom
gespeichert.
Bei SUSE Linux Enterprise Server wird mit dem emacs
-Paket die Datei site-start.el
im Verzeichnis /usr/share/emacs/site-lisp
installiert. Die Datei site-start.el
wird vor der Initialisierungsdatei ~/.emacs
geladen. Mit site-start.el
wird unter anderem sichergestellt, dass spezielle Konfigurationsdateien mit Emacs-Add-on-Paketen, wie psgml
, automatisch geladen werden. Konfigurationsdateien dieses Typs sind ebenfalls unter /usr/share/emacs/site-lisp
gespeichert und beginnen immer mit suse-start-
. Der lokale Systemadministrator kann systemweite Einstellungen in default.el
festlegen.
Weitere Informationen zu diesen Dateien finden Sie in der Info-Datei zu Emacs unter Init File: info:/emacs/InitFile
. Informationen zum Deaktivieren des Ladens dieser Dateien (sofern erforderlich) stehen dort ebenfalls zur Verfügung.
Die Komponenten von Emacs sind in mehrere Pakete unterteilt:
Das Basispaket
emacs
.emacs-x11
(in der Regel installiert): das Programm mit X11-Support.emacs-nox
: das Programm ohne X11-Unterstützung.emacs-info
: Onlinedokumentation im Info-Format.emacs-el
: Die nicht kompilierten Bibliotheksdateien in Emacs Lisp. Sie sind während der Laufzeit nicht erforderlich.Verschiedene Add-On-Pakete können bei Bedarf installiert werden:
emacs-auctex
(LaTeX),psgml
(SGML und XML),gnuserv
(Client- und Server-Vorgänge) und andere.
30.2 Virtuelle Konsolen #
Linux ist ein Multitasking-System für den Mehrbenutzerbetrieb. Die Vorteile dieser Funktionen können auch auf einem eigenständigen PC-System genutzt werden. Im Textmodus stehen sechs virtuelle Konsolen zur Verfügung. Mit den Tastenkombinationen Alt–F1 bis Alt–F6 können Sie zwischen den Konsolen umschalten. Die siebte Konsole ist für X und reserviert und in der zehnten Konsole werden Kernel-Meldungen angezeigt.
Wenn Sie von X ohne Herunterfahren zu einer anderen Konsole wechseln möchten, verwenden Sie die Tasten Strg–Alt–F1 bis Strg–Alt–F6. Mit Alt–F7 kehren Sie zu X zurück.
30.3 Tastaturbelegung #
Um die Tastaturzuordnung der Programme zu standardisieren, wurden Änderungen an folgenden Dateien vorgenommen:
/etc/inputrc /etc/X11/Xmodmap /etc/skel/.emacs /etc/skel/.gnu-emacs /etc/skel/.vimrc /etc/csh.cshrc /etc/termcap /usr/share/terminfo/x/xterm /usr/share/X11/app-defaults/XTerm /usr/share/emacs/VERSION/site-lisp/term/*.el
Diese Änderungen betreffen nur Anwendungen, die terminfo
-Einträge verwenden oder deren Konfigurationsdateien direkt geändert werden (vi
, emacs
usw). Anwendungen, die nicht im Lieferumfang des Systems enthalten sind, sollten an diese Standards angepasst werden.
Unter X kann die Compose-Taste (Multi-Key) gemäß /etc/X11/Xmodmap
aktiviert werden.
Weitere Einstellungen sind möglich mit der X-Tastaturerweiterung (XKB)
Informationen zu XKB finden Sie in den Dokumenten, die unter /usr/share/doc/packages/xkeyboard-config
(Teil des Pakets xkeyboard-config
) aufgelistet sind.
30.4 Sprach- und länderspezifische Einstellungen #
Das System wurde zu einem großen Teil internationalisiert und kann an lokale Gegebenheiten angepasst werden. Die Internationalisierung (I18N) ermöglicht eine spezielle Lokalisierung (L10N). Die Abkürzungen I18N und L10N wurden von den ersten und letzten Buchstaben der englischsprachigen Begriffe und der Anzahl der dazwischen stehenden ausgelassenen Buchstaben abgeleitet.
Die Einstellungen werden mit LC_
-Variablen vorgenommen, die in der Datei /etc/sysconfig/language
definiert sind. Dies bezieht sich nicht nur auf die native Sprachunterstützung, sondern auch auf die Kategorien Meldungen (Sprache) Zeichensatz, Sortierreihenfolge, Uhrzeit und Datum, Zahlen und Währung. Diese Kategorien können direkt über eine eigene Variable oder indirekt mit einer Master-Variable in der Datei language
festgelegt werden (weitere Informationen erhalten Sie auf der man-Seite zu locale
).
RC_LC_MESSAGES
,RC_LC_CTYPE
,RC_LC_COLLATE
,RC_LC_TIME
,RC_LC_NUMERIC
,RC_LC_MONETARY
Diese Variablen werden ohne das Präfix
RC_
an die Shell weitergegeben und stehen für die aufgelisteten Kategorien. Die betreffenden Shell-Profile werden unten aufgeführt. Die aktuelle Einstellung lässt sich mit dem Befehllocale
anzeigen.RC_LC_ALL
Sofern diese Variable festgelegt ist, setzt Sie die Werte der bereits erwähnten Variablen außer Kraft.
RC_LANG
Falls keine der zuvor genannten Variablen festgelegt ist, ist dies das Fallback. Standardmäßig wird nur
RC_LANG
festgelegt. Dadurch wird es für die Benutzer einfacher, eigene Werte einzugeben.ROOT_USES_LANG
Diese Variable kann auf
yes
oderctype
(Standardwert) festgelegt werden. Wenn sie aufyes
festgelegt ist, verwendetroot
Spracheinstellungen und länderspezifische Einstellungen. Andernfalls arbeitet der Systemadministrator immer in einer POSIX-Umgebung.
Die Variablen können über den sysconfig-Editor von YaST festgelegt werden. Der Wert einer solchen Variable enthält den Sprachcode, den Ländercode, die Codierung und einen Modifier. Die einzelnen Komponenten werden durch Sonderzeichen verbunden:
LANG=<language>[[_<COUNTRY>].<Encoding>[@<Modifier>]]
30.4.1 Systemweite Locale-Einstellungen #
systemd
liest /etc/locale.conf
im frühen Bootvorgang aus. Die in dieser Datei konfigurierten Locale-Einstellungen werden von jedem Service oder Benutzer übernommen, falls keine individuellen Einstellungen vorgenommen wurden.
In früheren Versionen las SUSE Linux Enterprise Server die Einstellungen aus den Dateien /etc/sysconfig/language
, /etc/sysconfig/keyboard
und /etc/sysconfig/console
. Ab SUSE Linux Enterprise Server
15 GA gelten diese Dateien als veraltet. systemd
liest aus diesen Dateien keine Einstellungen mehr. systemd
liest stattdessen /etc/locale.conf
.
Die in /etc/sysconfig/language
definierten Variablen werden jedoch weiterhin verwendet, um die systemweite Locale zu überschreiben, und können dazu verwendet werden, um andere Locale-Einstellungen für Benutzer-Shells zu definieren (Informationen hierzu finden Sie in Abschnitt 30.4.2, „Einige Beispiele“).
Zum Festlegen der systemweiten Locale gehen Sie folgendermaßen vor:
Schreiben Sie die Einstellungen in
/etc/locale.conf
. Jede Zeile ist eine umgebungsartige Variablenzuweisung (eine Liste von Variablen finden Sie inman 5 locale.conf
):LANG=de_DE.UTF-8
Zur Feinabstimmung der Einstellungen können Sie weitere Variablen hinzufügen, jeweils eine Variable pro Zeile.
Verwenden Sie das Kommando
localectl
:#
localectl
set-locale LANG=de_DE.UTF-8Auch hier können Sie nach dem Kommando
localectl set-locale
weitere Variablen angeben.
Zum Zweck der Rückwärtskompatibilität mit älteren Systemen bei der Aktualisierung des systemd-Pakets werden alle genannten Variablen von sysconfig zu den endgültigen Zielen migriert, falls sie dort nicht bereits definiert sind.
30.4.2 Einige Beispiele #
Sprach- und Ländercode sollten immer gleichzeitig eingestellt werden. Die Spracheinstellungen entsprechen der Norm ISO 639, die unter http://www.evertype.com/standards/iso639/iso639-en.html und http://www.loc.gov/standards/iso639-2/ verfügbar ist. Die Ländercodes sind in ISO 3166 aufgeführt (siehe http://en.wikipedia.org/wiki/ISO_3166).
Es ist nur sinnvoll, Werte festzulegen, für die verwendbare Beschreibungsdateien unter /usr/lib/locale
zu finden sind. Anhand der Dateien in /usr/share/i18n
können mit dem Befehl localedef
zusätzliche Beschreibungsdateien erstellt werden. Die Beschreibungsdateien sind Bestandteil des Pakets glibc-i18ndata
. Eine Beschreibungsdatei für en_US.UTF-8
(für Englisch und USA) kann beispielsweise wie folgt erstellt werden:
localedef -i en_US -f UTF-8 en_US.UTF-8
-
LANG=en_US.UTF-8
Dies ist die Standardeinstellung, wenn während der Installation US-Englisch ausgewählt wurde. Wenn Sie eine andere Sprache ausgewählt haben, wird diese Sprache ebenfalls mit der Zeichencodierung UTF-8 aktiviert.
-
LANG=en_US.ISO-8859-1
Hiermit wird als Sprache Englisch, als Land die USA und als Zeichensatz
ISO-8859-1
festgelegt. In diesem Zeichensatz wird das Eurozeichen nicht unterstützt, es kann jedoch gelegentlich in Programmen nützlich sein, die nicht für dieUTF-8
-Unterstützung aktualisiert wurden. Die Zeichenkette, mit der der Zeichensatz definiert wird (in diesem FallISO-8859-1
), wird anschließend von Programmen, wie Emacs, ausgewertet.LANG=en_IE@euro
Im oben genannten Beispiel wird das Eurozeichen explizit in die Spracheinstellung aufgenommen. Diese Einstellung ist nun überflüssig, da UTF-8 auch das Eurosymbol enthält. Sie ist nur nützlich, wenn eine Anwendung ISO-8859-15 anstelle von UTF-8 unterstützt.
Änderungen an /etc/sysconfig/language
werden mit der folgenden Prozesskette aktiviert:
Für die Bash:
/etc/profile
liest/etc/profile.d/lang.sh
, die ihrerseits/etc/sysconfig/language
analysiert.Für tcsh:
/etc/profile
liest/etc/profile.d/lang.csh
, die ihrerseits/etc/sysconfig/language
analysiert.
So wird sichergestellt, dass sämtliche Änderungen an /etc/sysconfig/language
bei der nächsten Anmeldung in der entsprechenden Shell verfügbar sind, ohne dass sie manuell aktiviert werden müssen.
Die Benutzer können die Standardeinstellungen des Systems außer Kraft setzen, indem Sie die Datei ~/.bashrc
entsprechend bearbeiten. Wenn Sie die systemübergreifende Einstellung en_US
für Programmmeldungen beispielsweise nicht verwenden möchten, nehmen Sie z. B. LC_MESSAGES=es_ES
auf, damit die Meldungen stattdessen auf Spanisch angezeigt werden.
30.4.3 Locale-Einstellungen in ~/.i18n
#
Wenn Sie mit den Locale-Systemstandardwerten nicht zufrieden sind, können Sie die Einstellungen in ~/.i18n
ändern. Achten Sie dabei jedoch auf die Einhaltung der Bash-Scripting-Syntax. Die Einträge in ~/.i18n
setzen die Systemstandardwerte aus /etc/sysconfig/language
außer Kraft. Verwenden Sie dieselben Variablennamen, jedoch ohne das Namespace-Präfix RC_
. Nutzen Sie beispielsweise LANG
anstatt RC_LANG
:
LANG=cs_CZ.UTF-8 LC_COLLATE=C
30.4.4 Einstellungen für die Sprachunterstützung #
Die Dateien in der Kategorie Meldungen werden generell im entsprechenden Sprachverzeichnis (wie beispielsweise en
) gespeichert, damit ein Fallback vorhanden ist. Wenn Sie für LANG
den Wert en_US
festlegen und in /usr/share/locale/en_US/LC_MESSAGES
keine Meldungsdatei vorhanden ist, wird ein Fallback auf /usr/share/locale/en/LC_MESSAGES
ausgeführt.
Darüber hinaus kann eine Fallback-Kette definiert werden, beispielsweise für Bretonisch zu Französisch oder für Galizisch zu Spanisch oder Portugiesisch:
LANGUAGE="br_FR:fr_FR"
LANGUAGE="gl_ES:es_ES:pt_PT"
Wenn Sie möchten, können Sie die norwegischen Varianten Nynorsk und Bokmål (mit zusätzlichem Fallback auf no
) verwenden:
LANG="nn_NO"
LANGUAGE="nn_NO:nb_NO:no"
oder
LANG="nb_NO"
LANGUAGE="nb_NO:nn_NO:no"
Beachten Sie, das bei Norwegisch auch LC_TIME
anders behandelt wird.
Ein mögliches Problem ist, dass ein Trennzeichen, das zum Trennen von Zifferngruppen verwendet wird, nicht richtig erkannt wird. Dies passiert, wenn LANG
auf einen aus zwei Buchstaben bestehenden Sprachcode wie de
eingestellt ist, die Definitionsdatei, die glibc verwendet, jedoch in /usr/share/lib/de_DE/LC_NUMERIC
gespeichert ist. Daher muss LC_NUMERIC
auf de_DE
gesetzt sein, damit das System die Trennzeichendefinition erkennen kann.
30.4.5 Weitere Informationen #
The GNU C Library Reference Manual, Kapitel „Locales and Internationalization“. Es befindet sich im Paket glibc-info.
Markus Kuhn, UTF-8 and Unicode FAQ for Unix/Linux, momentan verfügbar unter https://www.cl.cam.ac.uk/~mgk25/unicode.html.