Serial Over Lan leitet das OS-Terminal nicht um


7

Ich versuche, mithilfe einer IPMI Serial Over Lan (SOL) -Konsole ein Überwachungssystem für einen Remotecomputer zu erstellen. Das Remote-Betriebssystem ist RHEL 6, der Mobo-Hersteller ist Supermicro.

Ich habe die SOL-Umleitung im BIOS erfolgreich aktiviert. Auf diese Weise kann ich die BIOS- und Kernel-Teile des Startvorgangs über eine angeschlossene SOL-Konsole über IPMI anzeigen.

Als nächstes folgte ich den in vielen Online-Artikeln erwähnten Schritten, um mein Betriebssystem (Runlevel 3, nur Textterminal) dazu zu bringen, ebenfalls umzuleiten.

Das Ergebnis ist fast immer das gleiche: Nachdem ich die Änderungen an /etc/grub.conf, / etc / inittab und / etc / securetty vorgenommen habe, kann ich das Grub-Menü über die SOL-Konsole sehen (yay!), Aber sobald Das Betriebssystem startet den Startvorgang, mein SOL-Terminal empfängt 1 Kauderwelsch und nichts weiter.

Als Referenz ist dies meine grub.conf:

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

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

title Red Hat Enterprise Linux (2.6.32-220.el6.i686)
    root (hd0,0)
    kernel /boot/vmlinuz-2.6.32-220.el6.i686 ro \
     root=UUID=5f8c255c-f997-4d6a-9af5-a133fc9229a0 rd_NO_LUKS \
     rhgb crashkernel=auto quiet biosdevname=0 LANG=en_US.UTF-8 rd_NO_MD quiet \
     SYSFONT=latarcyrheb-sun16 rhgb crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us \
     rd_NO_LVM rd_NO_DM serial console=tty0 console=ttyS1,115200n8
    initrd /boot/initramfs-2.6.32-220.el6.i686.img

Ich habe die folgende Zeile zu / etc / inittab hinzugefügt:

S1:123456:respawn:/sbin/agetty -L ttyS1 115200 vt100

Ich habe Folgendes an meine / etc / securetty angehängt:

ttyS1

Ich habe /etc/init/ttyS1.conf erstellt, die wie folgt aussieht:

start on runlevel [345]
stop on runlevel [S016]

respawn
instance /dev/ttyS1
exec /sbin/agetty ttyS1 115200 vt100

Einige Zugeständnisse:

  • Ich bin mir nicht sicher, in welche serielle Schnittstelle mein BIOS versucht, Daten umzuleiten (ttyS0, ttyS1). Die meisten Beispiele verwenden ttyS1, und da das Grub-Menü dort umgeleitet wird, bin ich ziemlich sicher, dass dies "richtig" ist.
  • Ich weiß, dass die 'Terminaltypen' und Baudraten zwischen den BIOS- und Betriebssystemeinstellungen übereinstimmen müssen. Ich verwende konsequent 115200 für Baud, bin aber weniger sicher, dass ich den richtigen Terminaltyp auswähle. Der Terminaltyp im BIOS ist "ANSI", und dies gibt die gewünschte Färbung für das BIOS über SOL. Für die Betriebssystemeinstellungen verwenden die meisten Beispiele jedoch "Linux". Ich bin mir nicht sicher, ob das mit meiner ANSI-Einstellung kompatibel ist. Ich habe VT100 sowohl für das BIOS als auch für das Betriebssystem ausprobiert und sehe immer noch nichts hinter dem Grub-Menü (außerdem verliere ich Farbinformationen für mein BIOS über SOL).

Jede Hilfe wird sehr geschätzt.

Antworten:


3

Ich hatte ein ähnliches Problem mit SOL auf dem Supermicro-Server (SYS-1028R-WTRT). Ich habe ein Centos 7-Betriebssystem verwendet. Ich denke, diese Abfolge von Aktionen hilft mir bei der Entscheidung dieses Problems:

  1. Ich habe alle systemd getty-Dienste heruntergefahren (systemctl stop serial-getty @ ttyS0, ... ttyS1)
  2. Führen Sie / sbin / agetty -L ttyS1 115200 vt100 manuell aus (mit diesen Parametern erhalte ich eine Anmeldezeichenfolge für die SoL-Verbindung).
  3. Töte manuell ausgeführte Agetty.
  4. In der Datei / etc / default / grub set:

    GRUB_CMDLINE_LINUX="console=ttyS1,115200 console=tty0"
    GRUB_TERMINAL=serial
    GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=1 --word=8 --parity=no --stop=1"
    
  5. grub2-mkconfig -o /boot/grub2/grub.cfg

  6. Neustart!

Nach diesen Schritten arbeite ich an der SoL-Konsole.


Sie haben es geschafft, es funktioniert auf centOS7
Satish

1
Das funktioniert auch bei mir. Einige Beispiele fügen den console=...Befehl GRUB_CMDLINE_LINUX_DEFAULTanstelle von hinzu GRUB_CMDLINE_LINUX. Irgendeine Idee, was der Unterschied ist?
Stefan Lasiewski

1

Was passiert auf der Konsole, wenn Sie Folgendes als root in eine Shell eingeben?:

initctl start serial DEV=TTYS1 SPEED=115200

1

Versuchen Sie, die Reihenfolge Ihrer Konsole zu ändern console=ttyS1,115200n8 console=tty0

Wenn dies nicht funktioniert, haben das BIOS / Grub und der Kernel möglicherweise unterschiedliche Aufzählungen der seriellen Schnittstelle, was zu einer unterschiedlichen Nummerierung führt.

Versuchen Sie in diesem Fall, Ihre Kernel-Zeile zu ändern console=ttyS0,115200n8 console=tty0


0

Ich habe die serielle Konsole seit einiger Zeit nicht mehr verwendet, aber ich vermute, dass das Problem Folgendes ist:

rhgb quiet

Zeile in Ihrer grub.conf.

Dies ermöglicht den grafischen Start des roten Hutes. Das wird wahrscheinlich das Terminal beschädigen.

https://access.redhat.com/site/articles/2938


Vielen Dank für den Vorschlag. Ich habe alle Verweise auf "rhgb" und "quiet" in den Madenlinien entfernt, aber mein Problem besteht weiterhin. Für das, was es wert ist, habe ich vorher keinen grafischen Boot gesehen, weil ich (glaube ich) die splashimage=.... Zeile in meiner grub.conf auskommentiert habe. Dadurch wurde verhindert, dass die rot / weiße RHEL-Ladeleiste usw. während des Startvorgangs angezeigt wurde.
user2870990

Versuchen Sie, die Konsolengeschwindigkeit zu senken: console = ttyS0,9600n8 console = tty0
jeffatrackaid

Danke für den Vorschlag. Leider hat dies gerade alle Charaktere in meiner SOL-Konsole noch vor dem (was ich mir ziemlich sicher war) Grub-Bildschirm zum Kaudern gebracht. Sobald es an Grub vorbei war, bekam es keine neuen Charaktere mehr wie zuvor.
user2870990
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.