7.6. Einrichten der Linux Konsole

Dieser Abschnitt behandelt das console Intitskript, 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 das console Initskript einfach nichts.

Das Skript console benutzt /etc/sysconfig/console als Konfigurationsdatei. Entscheiden Sie, welche Tastaturbelegung und Bildschirmschriftarten Sie benutzen werden. Eine vorgefertigte Version von /etc/sysconfig/console mit vielen bekannten Einstellungen für verschiedene Länder wurde bereits mit dem Bootskripts-Paket mitinstalliert. Sie können den relevanten Abschnitt in der Datei einfach auskommentieren, falls Ihr Land bereits unterstützt wird. Falls Sie Bedenken haben, schauen Sie in /usr/share/kbd nach gültigen Tastaturbelegungen und Schriftarten. Lesen Sie die Man-pages zu loadkeys und setfont und bestimmten 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 Spanische Anwender, die das Euro-Symbol benutzen (erreichbar mit AltGr+E), diese Einstellungen richtig:

cat >/etc/sysconfig/console <<"EOF"
KEYMAP="es euro2"
FONT="lat9-16 -u iso01"
EOF
[Hinweis]

Hinweis

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-Initskript nicht das zugehörige Programm aus.

Bei manchen Tastaturbelegungen senden die Backspace- und Löschen-Tasten andere Tastenkodes 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 Kodeschnipsel 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 Kodeschnipsel nach dem Laden der Haupt-Tastaturbelegungstabelle zu laden:

cat >>/etc/sysconfig/console <<"EOF"
KEYMAP_CORRECTION="/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.8.1“. Damit stellen Sie sicher, dass die Tastatur immer richtig funktioniert, auch 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. Eigentlich sollte das allerdings keine Probleme verursachen, weil man im Wartungsmodus üblicherweise nicht auf Sonderzeichen angewiesen ist.

Da 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 jeden Kernel die Tastaturzuweisungstabelle fest einkompilieren möchten.