Beim Booten unter Linux werden manchmal ein oder zwei Zeilen schnell gelöscht. Ich denke, dass einige von ihnen nicht einmal in dmesg erscheinen. Wenn nichts anderes, möchte ich das Löschen vor der Eingabeaufforderung "login:" unterdrücken. Gibt es einen Kernel-Befehl oder ein sysctl, das ich einstellen kann, um dies zu verhindern, damit ich sie nach dem Booten auf dem Konsolenbildschirm lesen kann?
11
Antworten:
Die meisten gewünschten Informationen befinden sich in
/var/log/dmesg
und/var/log/messages
nach dem Systemstart sollten Sie diese Dateien zuerst überprüfen.Im Allgemeinen werden Linux-Maschinen für die virtuellen Terminals mingetty ausgeführt . Wenn Sie ein traditionelles Sysv-Init-System haben, werden diese von gesteuert
/etc/inittab
. Sie können die--noclear
Option zu mingetty hinzufügen, um das Löschen des Bildschirms zu verhindern. Bearbeiten/etc/inittab
und ändern Sie dazu diese Zeile:zu
Starten Sie dann den Computer neu.
Einige neuere Linux-Distributionen verwenden Init-Ersetzungen wie Upstart (z. B. Ubuntu). Diese verwenden im Allgemeinen nicht / etc / inittab und verwenden stattdessen einige andere Konfigurationsdateien. Hier ist eine Diskussion darüber, wie das Aufrufen von Mingetty unter Ubuntu funktioniert .
quelle
getty
vonutil-linux
, nichtmingetty
, aber dies funktioniert auch mit Debian. Vielen Dank!Bei systemd sieht es anders aus. Siehe Artikel Stop Clearing My God Damned Console . Zusamenfassend:
Überprüfen Sie das Ergebnis mit
systemctl cat [email protected]
quelle
Wenn nichts anderes geholfen hat, können Sie sich Ihren Laptop schnappen und das gesamte Kernel-Protokoll über die serielle Konsole erfassen, indem Sie den Kernel-Parametern Folgendes hinzufügen:
Dadurch wird die Ausgabe auf der seriellen Konsole (in Ihrem Terminalprogramm) und auf der Standard-Tty angezeigt. Manchmal ist SOL (Serial Over LAN) verfügbar.
quelle
Nach stundenlangem googeln fand ich die Lösung in diesem Thread und dieser Frage . Dieses Verfahren funktioniert für
Ubuntu 12.04.1 LTS
wie auch beschrieben hier , aber es sollte nicht zu viel unterscheiden sich für andere Distributionen.Fügen Sie
console=tty1
zunächst Ihre hinzuGRUB_CMDLINE_LINUX
(ich schlage auch vor, zu hinzufügennoplymouth
, um zu hemmenplymouth
und seinen nutzlosen Begrüßungsbildschirm).Dies erzwingt das Drucken des Kernel-Protokolls
tty1
anstelle vontty7
und vermeidet dentty
Wechsel vor der Anmeldeaufforderung.Dann gehen Sie einfach in
/etc/init
und bearbeiten eine oder mehrtty1.conf
,tty2.conf
,tty3.conf
,tty4.conf
,tty5.conf
,tty6.conf
oderconsole.conf
. Ich habe sie alle bearbeitet und--noclear
demgetty
Befehl eine Option hinzugefügt . Zum Beispiel bearbeitentty1.conf
:Sie müssen ersetzen:
mit:
Das ist alles, jetzt sollte Ihr System in einem einzigen starten,
tty
ohne es zu löschen.quelle
dmesg
Hier geht es zurück zum Anfang des Kernels, beginnend mitVielleicht ist dies eine BIOS-Nachricht oder ein Teil Ihres Bootloaders? In beiden Fällen gibt es so viele verschiedene Dinge, die den Bildschirm ausblenden können, ohne zu wissen, wo genau es passiert ist. Es ist schwer zu sagen, was man dagegen tun soll. Ist das einzige, was auf dem Bildschirm "Login:" übrig bleibt? oder gibt es noch andere Boot-Up-Sachen darüber? Wenn es unmittelbar vor der Anmeldeaufforderung ist und nichts anderes auf dem Bildschirm angezeigt wird, enthält es möglicherweise
/etc/issue
einen Befehl zum Ausblenden des Bildschirms ? Andernfalls könnten Sie eine Art Konsolenrahmenpuffer verwenden, der den Videomodus wechselt. Auf meinem Computer wird der Bildschirm ausgeblendet, wenn eine Konsolenschrift geladen wird.quelle
/etc/issue
kann auch ein Schuldiger sein. Guter Hinweis.