Dieser Abschnitt behandelt die Bootskripts console und consolelog, mit denen die Tastaturbelegung, die Konsoleschriftart und die Kernel-Protokollstufe für die Konsole eingerichtet werden. Falls Sie nur ASCII-Zeichen verwenden (das Copyright-Symbol, Britische Pfund oder das Euro-Zeichen sind Beispiele für nicht-ASCII-Zeichen) und Ihre Tastatur eine US-Amerikanische ist, dann können Sie große Teile in diesem Abschnitt überspringen. Wenn diese Konfigurationsdateien nicht erstellt werden, unternehmen diese Bootskripte einfach nichts.
Die Skripte console und
consolelog lesen
/etc/sysconfig/console
als
Konfigurationsdatei ein. Entscheiden Sie, welche Tastaturbelegung und
Bildschirmschriftarten Sie benutzen möchten. Die verschiedenen
sprachbezogenen Hilfsdokumente unter http://www.tldp.org/HOWTO/HOWTO-INDEX/other-lang.html
können Sie bei der Entscheidung unterstützen. Wenn Sie unsicher sind,
schauen Sie in /lib/kbd
nach gültigen
Tastaturbelegungen und Bildschirmschriften. Lesen Sie die Hilfeseiten
loadkeys(1)
und setfont(8)
und bestimmen Sie die korrekten
Parameter zu diesen Programmen.
Die Datei /etc/sysconfig/console
sollte
Zeilen in der Form: VARIABLE="Wert" enthalten. Die folgenden
Variablen sind möglich:
Dieses Variable legt die Protokollierstufe für Kernelnachrichten fest, die mittels dmesg an die Konsole übergeben werden. Gültig sind Angaben zwischen "1" (keine Nachrichten) und "8". Die Standard-Stufe ist "7".
2
Diese (wenig eingesetzte) Variable gibt die Argumente für den zweiten Aufruf von loadkeys an. Sie ist nützlich, wenn die ausgelieferte Tastaturlayouttabelle nicht zufriedenstellend ist und kleinere Änderungen daran vorgenommen werden sollen. Um z. B. das Euro-Zeichen zu unterstützen, obwohl es normalerweise im Tastaturlayout nicht vorgesehen ist, benutzen Sie den Wert „euro2“.
Diese Variable übernimmt die Argumente für das Programm setfont. Dies sind üblicherweise der Name der Schrift, „-m“ und der Name der zu ladenden Kodierung. Um beispielsweise die Schrift „lat1-16“ zusammen mit der Kodierung „8859-1“ zu laden (so ist es in den USA üblich), setzen Sie diese Variable auf „lat1-16 -m 8859-1“. Im UTF-8-Modus verwendet der Kernel den Anwendungs-Zeichensatz zur Umwandlung von zusammengesetzten 8-Bit-Tastenkodes in der Zeichentabelle zu UTF-8. Daher sollte das Argument zum Parameter „-m“ auf die Kodierung des zusammengesetzten Zeichenkodes in der Zeichentabelle eingestellt werden.
Setzen Sie diese Variable auf „1“, „yes“ oder „true“, um für die Konsole den UTF-8-Modus zu aktivieren. Dies ist nur für auf UTF-8 basierende Locales sinnvoll und in allen anderen Locales schädlich!
Für viele Tastaturlayouts gibt es im kbd-Paket keine Tastaturlayouttabelle im Unicode-Format. Das console-Bootskript wird eine verfügbare Layouttabelle zur Laufzeit nach UTF-8 umwandeln, wenn diese Variable auf eine nicht-UTF-8 Layouttabelle eingestellt ist.
Einige Beispiele:
Für eine Nicht-Unicode-Umgebung werden üblicherweise nur die Variablen KEYMAP und FONT benötigt. In Polen würde man dies verwenden:
cat > /etc/sysconfig/console << "EOF"
# Begin /etc/sysconfig/console
KEYMAP="pl2"
FONT="lat2a-16 -m 8859-2"
# End /etc/sysconfig/console
EOF
Wie bereits erwähnt, muss das vorbereitete Tastaturlayout manchmal ein wenig angepasst werden. Im folgenden Beispiel wird das Euro-Zeichen zum deutschen Tastaturlayout hinzugefügt:
cat > /etc/sysconfig/console << "EOF"
# Begin /etc/sysconfig/console
KEYMAP="de-latin1"
KEYMAP_CORRECTIONS="euro2"
FONT="lat0-16 -m 8859-15"
# End /etc/sysconfig/console
EOF
Und nun folgt ein Beispiel für eine Unicode-Umgebung in Bulgarien, wofür es ein vorbereitetes UTF-8-Tastaturlayout gibt:
cat > /etc/sysconfig/console << "EOF"
# Begin /etc/sysconfig/console
UNICODE="1"
KEYMAP="bg_bds-utf8"
FONT="LatArCyrHeb-16"
# End /etc/sysconfig/console
EOF
Im vorherigen Beispiel wird die Schrift LatArCyrHeb-16 mit 512 Symbolen eingesetzt. Dies hat zur Folge, das in der Linux-Konsole keine hellen Farben mehr angezeigt werden können, es sei denn man verwendet einen Framebuffer. Falls Sie helle Farben ohne Framebuffer benötigen sollten und dafür mit einigen fehlenden Zeichen leben können (die nicht zur eigenen Sprache gehören), dann können Sie wie folgt auf eine Schrift mit 256 Zeichen zurückgreifen:
cat > /etc/sysconfig/console << "EOF"
# Begin /etc/sysconfig/console
UNICODE="1"
KEYMAP="bg_bds-utf8"
FONT="cyr-sun16"
# End /etc/sysconfig/console
EOF
Das folgende Beispiel stellt die automatische Umwandlung von ISO-8859-15 nach UTF-8 sowie die Aktivierung „toter“ Tasten im Unicode-Modus dar:
cat > /etc/sysconfig/console << "EOF"
# Begin /etc/sysconfig/console
UNICODE="1"
KEYMAP="de-latin1"
KEYMAP_CORRECTIONS="euro2"
LEGACY_CHARSET="iso-8859-15"
FONT="LatArCyrHeb-16 -m 8859-15"
# End /etc/sysconfig/console
EOF
Einige Tastaturlayouttabellen enthalten sog. tote Tasten (Tasten, die kein eigenständiges Zeichen erzeugen, sondern z. B. das nachfolgende Zeichen mit einem Akzent versehen) oder Kompositions-Regeln (wie „Strg+. A E für Æ“ in der Standard-Layouttabelle). Linux-2.6.27.4 interpretiert tote Tasten und Kompositions-Regeln in der Tastaturlayouttabelle nur dann richtig, wenn die einzelnen Zeichen, die zusammengesetzt werden sollen, keine Multibyte-Zeichen sind. Dieser Nachteil betrifft allerdings keine europäischen Tastaturlayouttabellen, weil alle Akzente ausschließlich an nicht-akzentuierte ASCII-Zeichen angefügt, bzw. nur reine ASCII-Zeichen aneinandergefügt werden. Im UTF-8-Modus ist dies jedoch ein Problem für die griechische Sprache, in der manchmal ein Akzent an das Zeichen „alpha“ angefügt werden muss. Entweder vermeiden Sie den UTF-8-Modus, oder Sie installieren X-Windows, welches diese Einschränkung in der Eingabemethode nicht hat.
Die nötigen Zeichen für die Sprachen Chinesisch, Japanisch, Koreanisch und ein paar weitere lassen sich in der Linux-Konsole nicht anzeigen. Falls Sie diese benötigen, müssen Sie das X-Window-System, die benötigten Schriften und eine Eingabe-Methode (wie SCIM) installieren.
Mit der Datei /etc/sysconfig/console
können Sie ausschließlich die Lokalisierung für die
Linux-Textkonsole einrichten. Dies hat nichts mit den Einstellungen
für das X-Window-System, SSH-Sitzungen oder einer seriellen Konsole
zu tun (wo diese beiden obigen Einschränken nicht gelten).