Home Dokumente Bilder Anleitungen Links Impressum

Serielle Konsole

Die gute, alte serielle Konsole bietet gerade unter Linux einige durchaus mächtige Anwendungsmöglichkeiten. Ein kompletter Server lässt sich über eine simple COM-Verbindung aus der Ferne steuern. Theoretisch wäre es möglich, dass sich dies zum Beispiel mit Hilfe eines Modems auch von den klassischen Beschränkungen direkten physischen Zugriffs mit dem Rechner trennen lässt. In meinem Anwendungsfall bin ich jedoch glücklich, wenn ich einen Server aus 50 Metern Entfernung über ein Kat5-Kabel fernsteuern kann, das mittels Adapter zwischen dem COM-Port meines Rechners und dem COM-Port des Servers eine direkte Verbindung schafft. Somit bin ich unabhängig von Netzwerkproblemen, Aussetzern der Firewall oder anderer Unbill. Ebenfalls sehr nett an dieser Lösung ist, dass man am zu administrierenden Server keine Tastatur oder Monitor mehr braucht. Alle Eingaben und die Ergebnisse werden über die serielle Verbindung direkt über meinen Rechner abgewickelt.

Diese kurze Anleitung ist kein Ersatz für das sehr ausführliche Howto von Glen Turner und Mark F. Komarinski. Ich gehe nur auf die simpelste aller Konfigurationen ein und beschränke mich dabei auch noch auf SuSE Linux 8.0 und höher. Sie ist vielmehr nur eine Gedächtnisstütze, da ich viel zu schnell wieder vergesse, welche Einstellungen am Server vorgenommen werden müssen.

Bootmeldungen des Kernels am seriellen Port anzeigen

Sehr schön finde ich ein Kernel-Feature, das alle Meldungen beim Hoch- oder Runterfahren des Servers auch an die serielle Konsole weitergibt. Hierzu muss man aber leider in die Einstellungen des Bootloader gehen, um dort manuell eine Ergänzung vorzunehmen.

In Yast gibt es dafür einen eigenen Menüpunkt. Er ist zu finden unter System und dann Konfiguration des Bootloaders. Das Yast-Modul liefert daraufhin eine eine Übersicht mit den Bootloader Abschnitten. Hier den "Standardabschnitt" auswählen und Bearbeiten aufrufen.
Jetzt den Kernel auswählen, der standardmäßig beim Starten des Rechners geladen wird (ist markiert) und wieder Bearbeiten aufrufen.
In der neuen Übersicht müsse ein Eintrag mit dem Titel "kernel" erscheinen. Wiederum kann man hier diesen Eintrag markieren und Bearbeiten auswählen.

Es öffnet sich daraufhin ein Eingabefenster, das die momentanen Einstellungen beinhaltet. Diese könnten zum Beispiel so aussehen:

(hd0,0)/vmlinuz root=4804 vga=0x317 splash=silent
desktop resume=/dev/ida/c0d0p2 showopts console=tty0

Diesem Eintrag muss am Ende folgendes hinzugefügt werden.

console=ttyS0,9600n8

Der Parameter "ttyS0" steht hierbei für COM1. Bei COM2 wäre es "ttyS1". "9600" steht für 9.600 baud. Bei längeren Kabellängen macht eine geringe Datenübertragungsrate Sinn. Wem der Sinn nach mehr Geschwindigkeit steht, sollte hier mal "57600" ausprobieren. Allerdings wird sich der Unterschied bei einer simplen Kommandozeile nicht wirklich groß bemerkbar machen. "n8" bedeutet no parity und 8 data bits.

Der Eintrag kann dann komplett so aussehen:

(hd0,0)/vmlinuz root=4804 vga=0x317 splash=silent
desktop resume=/dev/ida/c0d0p2 showopts console=tty0
console=ttyS0,9600n8

Konsole über den seriellen Anschluss

Die Bereitstellung einer seriellen Konsolen kann sehr praktisch sein. Auf diese Weise lässt sich somit zum Beispiel auf SSH verzichten. Die serielle Konsole lässt sich mit Kat5-Kablen vermutlich auf circa 100 Meter verlängern. Somit lässt sich eine direkte Verbindung auch in die entlegendsten Winkel des Büros patchen (solange man immer eine physikalische Verbindung herstellen kann).

Als erstes muss Linux gesagt werden, dass es auf der seriellen Konsole nach Verbindungsaufrufen lauschen soll. Dazu muss in der Datei /etc/inittab folgender Eintrag hinterlegt werden. Bei SuSE Linux ist dies oft sogar schon als Beispiel vorgegeben und muss nur noch auskommentiert werden.

S0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt102

Fall die Ausgaben des Kernels ebenfalls umgeleitet wurden (siehe oben), sollten die Einstellungen (Baudzahl, Port) mit dem im Bootmanagener hinterlegten Werten identisch sein.

Eine Linux Standardeinstellung verhindert nun jedoch noch, dass sich root auf der seriellen Konsole anmelden kann. Zur Freischaltung dieses Zugriffs muss eine Zeile in der Konfigurationsdatei /etc/securetty hinzugefügt werden. Hier wird einfach der Name der freizuschaltenden Schnittstelle eingetragen:

ttyS0

 

Haftungshinweis: Trotz sorgfältiger inhaltlicher Kontrolle übernehme ich keine Haftung für die Inhalte externer Links. Für den Inhalt der verlinkten Seiten sind ausschließlich deren Betreiber verantwortlich.
Besuchen Sie auch meine Bildergalerie unter gallery.plogmann.net.
© Stefan Plogmann, 1996-2010

druckversion switch to english homepage suche
aktuelles