7.6. Einrichten der Linux Konsole

Dieser Abschnitt behandelt das Bootskript console, mit dem die Tastaturbelegung und die Konsoleschriftart eingerichtet wird. Falls Sie nur ASCII-Zeichen verwenden (Britische Pfund oder das Euro-zeichen sind Beispiele für nicht-ASCII-Zeichen) und Ihre Tastatur eine US-Amerikanische ist, dann überspringen Sie diesen Abschnitt. Ohne die Konfigurationsdatei unternimmt dieses Bootskript einfach nichts.

Das Skript benutzt /etc/sysconfig/console als Konfigurationsdatei. Entscheiden Sie, welche Tastaturbelegung und Bildschirmschriftarten Sie benutzen werden. Eine vorgefertigte Version von /etc/sysconfig/console mit bekannten Einstellungen für verschiedene Länder wurde bereits mit dem Paket LFS-Bootskripte mitinstalliert. Falls Ihr Land bereits unterstützt wird, können Sie den relevanten Abschnitt in der Datei einfach auskommentieren. Wenn Sie unsicher sind, schauen Sie in /usr/share/kbd nach gültigen Tastaturbelegungen und Schriftarten. Lesen Sie loadkeys(1) und setfont(8) und bestimmen Sie die korrekten Parameter zu diesen Programmen. Wenn Sie sich entschieden haben, erstellen Sie mit dem folgenden Kommando die Konfigurationsdatei:

cat >/etc/sysconfig/console <<"EOF"
KEYMAP="[Argumente für loadkeys]"
FONT="[Argumente für setfont]"
EOF

Beispielsweise sind für deutsche Anwender, die das Euro-Symbol benutzen (erreichbar mit AltGr+E), diese Einstellungen richtig:

cat >/etc/sysconfig/console <<"EOF"
KEYMAP="de-latin1-nodeadkeys euro"
FONT="lat9-16 -u lat1"
EOF
[Anmerkung]

Anmerkung

Die obige FONT-Zeile ist nur für den Zeichensatz ISO 8859-15 korrekt. Wenn Sie ISO 8859-1 mit dem Pfund-Symbol benutzen, sieht die korrekte FONT-Zeile so aus:

FONT="lat1-16"

Wenn die Variable KEYMAP oder FONT nicht eingestellt ist, führt das console-Bootskript das zugehörige Programm nicht aus.

Bei manchen Tastaturbelegungen senden die Backspace- und Löschen-Tasten andere Tastencodes als die im Kernel eingebaute voreingestellte Tastaturbelegung. Das bringt bestimmte Anwendungen durcheinander. Zum Beispiel zeigt Emacs seine Hilfe an, anstatt das Zeichen vor dem Cursor zu löschen, wenn Backspace gedrückt wurde. Prüfen Sie, ob die aktuelle Tastaturbelegung davon betroffen ist (funktioniert nur auf i386-Tastaturbelegungen):

zgrep '\W14\W' [/Pfad/zu/Ihrer/Tastaturtabelle]

Wenn keycode 14 Backspace anstatt Delete ist, dann erstellen Sie diesen kleinen Codeschnipsel um das Problem zu lösen:

mkdir -p /etc/kbd && cat > /etc/kbd/bs-sends-del <<"EOF"
                  keycode  14 = Delete Delete Delete Delete
              alt keycode  14 = Meta_Delete
        altgr alt keycode  14 = Meta_Delete
                  keycode 111 = Remove
    altgr control keycode 111 = Boot
      control alt keycode 111 = Boot
altgr control alt keycode 111 = Boot
EOF

Weisen Sie das Skript console an, den Codeschnipsel nach dem Laden der Haupttabelle zu laden:

cat >>/etc/sysconfig/console <<"EOF"
KEYMAP_CORRECTIONS="/etc/kbd/bs-sends-del"
EOF

Wenn Sie die Tastaturzuweisungstabelle direkt in den Kernel einkompilieren möchten anstatt sie von dem console-Skript einstellen zu lassen, dann folgen Sie den Anweisungen in Abschnitt 8.3, „Linux-2.6.11.12“. Auf diese Weise können Sie sicherstellen, dass die Tastatur immer richtig funktioniert, selbst wenn Sie im Wartungsmodus starten (indem Sie den Parameter init=/bin/sh an den Kernel übergeben). Im Wartungsmodus wird das console-Skript nicht ausgeführt und damit auch die Tastaturbelegung und Bildschirmschriftart nicht korrekt eingestellt. Normalerweise sollte das allerdings sowieso keine Probleme verursachen, weil man im Wartungsmodus üblicherweise nicht auf Sonderzeichen angewiesen ist.

Wenn der Kernel die Tastaturzuweisungstabellen läd, können Sie die Variable KEYMAP in /etc/sysconfig/console weglassen. Sie können Sie aber auch problemlos stehen lassen. Das könnte z. B. sinnvoll sein, wenn Sie verschiedene Kernel laufen lassen möchten und nicht in jedem Kernel die Tastaturzuweisungstabelle fest einkompilieren möchten.