Red Hat Linux serielle Konsole


1. Red Hat Linux Serielle Konsole

Serielle Konsolen sind ein wichtiges Hilfsmittel bei der Wartung von Servern. Speziell kombiniert mit einem Konsole Server ergeben sich viele Möglichkeiten, etwa das Remote Management von Rechnern (wobei bereits ab dem Bootloader, bei entsprechender Unterstützung durch die Hardware auch bereits ab dem Einschalten des Rechners, inklusive BIOS, interaktiv zugegriffen werden kann). In der Praxis bedeutet dies etwa, dass man etwa im Bootloader umstellt, dass der Rechner nur im Single User Mode hochfahren soll. Dort kann man nun remote Wartungsarbeiten durchführen, die sonst nicht möglich wären, da zu diesem Zeitpunkt noch keine Netzwerkverbindung besteht. Ein anderes wichtiges Einsatzgebiet ist der Bereich der Diagnose - hat man die remote Konsole ständig laufen oder einen Konsole Server, der alle Konsole Meldungen aufzeichnet, so können etwa die Meldungen bei Systemabstürzen im Nachhinein bequem ausgelesen werden.

Dieser Text ist eine Kurzanleitung für alle, die bereits die Bedeutung und Funktion einer seriellen Konsole kennen, diese nun aber einfach unter Linux zum Laufen bringen wollen.

Dieser Text basiert auf dem Linux Serial HOWTO (http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/pdf/Serial-HOWTO.pdf). Viele Details sind dort genau beschrieben.

Dieser Text beschreibt, wie ein Red Hat Linux System (ia32) über eine serielle Konsole (über einen Console Access Server) betrieben werden kann.

Idealer Weise unterstützt das BIOS die Ausgabe an eine serielle Konsole (z.B. alle Dell PowerEdge 1x50 und 2x50). Ist dies nicht der Fall, steht die serielle Konsole erst ab dem Bootloader zur Verfügung.

Dem Bootloader müssen die korrekten Parameter übergeben werden.

GRUB:

kernel (...) ro root=/dev/(...) console=tty0 console=ttyS0,9600n8

Lilo:

append="console=tty0 console=ttyS0,9600n8"

Bei GRUB muss außerdem das Splashimage auskommentiert werden:

# splashimage=(hd0,0)/grub/splash.xpm.gz

ttyS0 ist die erste serielle Interface (ggf. anzupassen), 9600 die Geschwindigkeit, es werden 8 Bit zur Datenübertragung verwendet. Diese Einstellungen sind für jeden Booteintrag vorzunehmen.

Unterstützt das BIOS keine serielle Konsole, so ist dem Bootloader in einer globalen Konfiguration mitzuteilen, dass er die serielle Konsole verwenden soll:

GRUB:

serial --unit=0 --speed=9600 --word=8 --parity=no --stop=1
terminal --timeout=10 serial console

Die zweite Zeile bewirkt, dass sowohl die serielle Schnittstelle als auch die normale Konsole einen Prompt bekommen. Wer zuerst drückt, bekommt den Prompt. Nach dem Timeout geht die Konsole zu „serial“.

Lilo:

serial=0,9600n8

Zur Verfügungstellung des Login Prompts muss eine getty Variante entsprechend konfiguriert werden.

Dazu trägt man in /etc/inittab ein:

co:2345:respawn:/sbin/agetty ttyS0 9600 vt100

Nach einem Neustart bzw. der Eingabe von telinit q sollte auf der seriellen Konsole ein Anmeldeprompt erscheinen.

Um sich auch als root anmelden zu können, ist in der Datei /etc/securetty folgendeZeile hinzuzufügen:

ttyS0

Damit der Bootvorgang für die serielle Konsole besser lesbar ist, trägt man in die Datei /etc/sysconfig/init ein:

BOOTUP=-serial
PROMPT=no

Denkt man auch nur im Entferntesten daran, für „out of band management“ an die serielle Konsole ein Modem zu hängen, sollte man dringend den „Magic SysRq Key“ deaktivieren - /etc/sysctl.conf:

kernel.sysrq=0

(Sofortige Wirkung erzielt man mit echo 0 > /proc/sys/kernel/sysrq).

Auch eine Installation von Red Hat Linux ist über die serielle Konsole möglich, wenn das BIOS die serielle Konsole unterstützt. Dann ist am Prompt Folgendes einzugeben:

text console=ttyS0,9600n8

Ab Red Hat Linux Version 8 wird dies danach in die Konfiguration des installierten Systems übernommen, sodass obige Anpassungen teilweise bereits vorgenommen sind.

Ich würde aber empfehlen, die Installation über den „normalen“ VGA Adapter durchzuführen (ist eindeutig besser zu bedienen ...).

Noch besser: einfach eine kleine Kickstart Konfiguration machen und das X Display des Installers exportieren ... siehe das Dokument „Remote Linux Installation“.

Bei der Installation werden keine entsprechenden Konsole-Einträge vorgenommen, diese müssen wie oben beschrieben vorgenommen werden.