Wie kann man die Ursache des Totalhangs untersuchen?

19

Mein Arch-Computer hängt sich manchmal auf und reagiert plötzlich in keiner Weise auf Maus oder Tastatur. Der Cursor ist eingefroren. Strg-Alt-Backsp stoppt X11 nicht und Strg-Alt-Entf tut genau nichts. Die Darstellungen der CPU-, Netzwerk- und Festplattenaktivität in conky und icewm werden nicht mehr aktualisiert. In wenigen Minuten schaltet sich der Lüfter ein. Die einzige Möglichkeit, den Computer dazu zu bringen, etwas zu tun, besteht darin, die Stromversorgung auszuschalten.

Beim Hochfahren zeigen die CPU-Temperaturmonitore 70 bis 80 ° C an. Vor dem Hang habe ich normalerweise Aktivitäten mit geringer Intensität ausgeführt, wie z. B. Surfen im Internet bei etwa 50 ° C.

Die Protokolle zeigen nichts Besonderes im Vergleich zu einem normalen Herunterfahren. Memory Checker läuft einwandfrei ohne Fehler.

Wie kann ich untersuchen, warum es aufgelegt hat? Gibt es zusätzliche Informationen, die ich für einen Hinweis finden kann? Gibt es etwas, das weniger drastisch ist als das Ausschalten, um eine Aktion zu starten, wenn nur eine begrenzte Anzahl von Signaltönen zu hören ist, aber möglicherweise einen Hinweis gibt?

Die Maschine ist ein Gateway P6860 17 "-Laptop (sperrig, aber leistungsstark) und es wird Arch 64-Bit ausgeführt (Stand März 2011). Ich hatte Arch für eine lange Zeit ohne dieses Problem und wechselte für ungefähr eine Woche zu Ubuntu Dann zog er sich zu einer neuen Installation von Arch zurück. Dann begannen die Vorhänge.

UPDATE: Ja, sicher ist es überhitzt. Bei einer bestimmten Temperatur funktionieren Maus und Tastatur nicht mehr und werden manchmal nach einigen Minuten Abkühlung wieder funktionsfähig. Bei einer höheren Temperatur passieren schlimmere Dinge, wie die völlige Nichtreagibilität, einschließlich des Ignorierens von SysRq. Diesem Zustand folgt kurz ein plötzliches Ausschalten. Ich habe das Problem durch den Kauf eines neuen Computers 8D gelöst

DarenW
quelle

Antworten:

7

Frederiks Antwort mit Magic SysRq und Kernel-Dumps funktioniert, wenn der Kernel noch läuft und nicht wirklich hängt. Der Kernel ist möglicherweise aus irgendeinem Grund gerade mit dem Schleifen beschäftigt.

Die Tatsache, dass es nicht auf Strg-Alt-Entf reagiert, sagt mir, dass dies wahrscheinlich nicht der Fall ist und dass die Maschine schwer abstürzt. Das bedeutet Hardwarefehler oder ähnliches wie ein schlechter Treiber.

Ihr Gedächtnistest ist gut, wenn Sie ihn lange genug laufen lassen. Sie sollten auch andere Dinge ausprobieren, um das System zu belasten, z . B. StressLinux . Langfristige Benchmarks sind ebenfalls gut.

Eine andere Sache, die Sie versuchen sollten, ist, das System mit einer Ubuntu-Live-CD zu booten und zu versuchen, das System wie gewohnt zu verwenden. Wenn eine vorübergehende Rückkehr zu Ubuntu nicht zu einem erneuten Auftreten des Problems führt, ist die Wahrscheinlichkeit groß, dass die Hardware nicht kaputt ist, sondern eines der verwandten Dinge wie ein schlechter Treiber oder ein falsch konfigurierter Kernel. Es ist durchaus möglich, dass eine populärere Distribution wie Ubuntu eine stabilere Kernel-Konfiguration als eine wie Arch hat, einfach weil während der Testphase der Distribution mehr Maschinen getestet wurden.

Warren Young
quelle
Ich glaube, dass Strg-Alt-Entf von Init behandelt wird, so dass es möglicherweise nicht funktioniert, auch wenn der Kernel noch funktioniert. OTOH AFAIR wartet der Kernel nach einer Panik nicht auf SysRq-Schlüssel.
JPC
1
Das ist möglich. Geben Sie zur Unterscheidung der Fälle ctrlaltdel hardIhre /etc/rc.localAkte ein. Wenn das System abstürzt, versuchen Sie es mit Strg-Alt-Entf. Wenn es immer noch nichts tut, wissen Sie sicher, dass der Kernel nicht mehr läuft. Sie haben einen Hardware- oder Treiberfehler.
Warren Young
1
Ich habe Kernel auf Magic SysRq-Schlüssel reagieren lassen, obwohl sie in Panik gerieten. Durch eine ordnungsgemäße Einrichtung des kdump-Dienstes sollte sichergestellt werden, dass ein vollständig verkeiltes System in den kdump-Kernel bootet, sodass er möglicherweise wieder verfügbar ist.
Jsbillings
1
Nach einem kurzen Blick in den Code für die Kerneltastatur sieht es für mich so aus, als würden Strg-Alt-Entf und magic SysRq auf der gleichen Ebene gehandhabt: Wenn einer funktioniert, funktioniert der andere. Das init (1) / SIGINT-Problem ist separat und wird behoben, indem die Ctrl-Alt-Del-Behandlung so eingestellt wird, dass ein harter Neustart durchgeführt wird, wie in meinem anderen Kommentar erwähnt.
Warren Young
11

In Bezug auf das Einfrieren gibt es einige Optionen:

  • Verwenden einer seriellen Schnittstelle, wenn Ihre Box eine hat, um den Speicherauszug zu erhalten, indem Sie console=ttyS0die Boot-Optionen wie hier beschrieben erweitern . Sie benötigen einen zweiten Computer mit einer seriellen Schnittstelle und einem Nullmodemkabel, um die Speicherauszugsdatei abzufangen.

  • Verwenden Sie netconsole, um den Dump über das Netzwerk abzurufen ( siehe hier) .

  • Wenn Sie kexec / kdump auf diese Weise verwenden, erhalten Sie einen lokalen Speicherauszug ( siehe hier) .

In Bezug auf das Problem des sauberen Ausschaltens schlage ich vor, dass Sie den magischen SysRq-Schlüssel verwenden , um die Disks zu synchronisieren, sie zu entfernen und dann die Box neu zu starten (die Buchstaben sind diejenigen, die Sie zusammen mit alt eingeben sollten) -sysrq.

Bearbeiten: Wenn Sie die oops / trace in der lkml veröffentlichen, sollten Sie eine aktuelle (vorzugsweise die neueste) Version des Kernels und keine proprietären Module verwenden.

Frederik Deweerdt
quelle
1
Ich kann mir viele junge Stimmen vorstellen, die sagen: "Was ist eine serielle Schnittstelle, Opa?" Tatsächlich glaube ich nicht, dass diese Maschine überhaupt eine hat.
DarenW
Ich erinnere mich, vor ein paar Jahren etwas über SysReq gelesen zu haben. Wenn ich es nur googeln könnte, wenn die Maschine tot ist! Ich
schätze,