benutze trace-cmd / ftrace, um function_graph zu bekommen, kurz bevor panic () passiert ist

9

Ich versuche, trace-cmd zu verwenden, um mehr Informationen über einen Kernel-Absturz zu erhalten, den ich sehe. Unglücklicherweise stürzt der Kernel mit der Fehlermeldung "kernel panic - not syncing" ab (d. H. Socket- und Dateipuffer werden nicht geleert, was zum Zeitpunkt des Absturzes in den Puffern war, ist unweigerlich verloren).

Gibt es einen Weg zu :

  1. force trace-cmd process, um seine Puffer in Dateisystem oder Sockets zu löschen? ODER
  2. make trace-cmd / ftrace, um eine Pufferung zu vermeiden (dh printk () hinter Szenen aufrufen und netconsole verwenden)?

Da ich den Befehl trace-cmd in einer virtualisierten Umgebung ausführe, ist es mir egal, dass die Festplatte gelegentlich beschädigt wird, weil ich einfach zum letzten guten Snapshot zurückkehren oder die VM erneut bereitstellen kann.

    
Hans Solo 26.09.2017, 18:53
quelle

1 Antwort

2

Ich kann nicht garantieren, dass mein Rezept Ihnen hilft, aber wer weiß:)

Versuchen Sie zunächst, alle Ausgaben von trace-cmd zu entpacken. Du könntest einige Rezepte dafür finden Ссылка

Zweitens, Kernel behandelt das Schreiben von FS in Panik ist sehr gefährlich und das ist in Ordnung, aber Sie könnten versuchen, letzte Bisse von Informationen vor dem Tod außerhalb des abgestürzten Computers zu speichern. Versuchen Sie, Ihre wichtigen Informationen an die serielle oder Netzwerkverbindung umzuleiten und auf der anderen Seite abzufangen. Wie

%Vor%

Eine andere Möglichkeit besteht darin, Panik zu vermeiden und den Kernel länger laufen zu lassen, jedoch mit unvorhersehbaren Ergebnissen. Sie können Panik für mehrere Fälle deaktivieren. Sehen Sie sich panic_on_* Einstellungen im Verzeichnis /proc/sys/kernel/ an. Weitere Details finden Sie in der " Dokumentation für / proc / sys / kernel / "

    
MrCryo 30.09.2017 08:05
quelle

Tags und Links