2644269

Linux-Abstürze: So kommen Sie Problemen auf die Spur

11.03.2022 | 09:31 Uhr | Thorsten Eggeling

Auch ein Linux läuft nicht immer rund. Die Ursachen für Systemhänger oder Komplettabstürze können bei der Hardware, beim Linux-System selbst oder bei einer Anwendung liegen.

Die meisten Linux-Distributionen sind gut getestet und laufen daher zuverlässig und stabil. Vor allem die Langzeitversionen (LTS) sind eher konservativ konfiguriert und setzen auf bewährte Komponenten. Aber auch eine LTS-Version kann instabil laufen – aus ganz unterschiedlichen Ursachen. Ein erster Schritt ist deshalb, den Auslöser eines Problems einzugrenzen.

Die Suche nach der Problemursache

Eine wichtige Unterscheidung betrifft den Zeitpunkt, ab dem ein Fehler auftaucht. Wenn ein neuer Rechner mit einem frisch installierten Linux unzuverlässig arbeitet, sollte man eine andere Distribution ausprobieren. Tritt der Fehler auch hier auf, kann man von einer generellen Inkompatibilität der Hardware mit Linux oder einem Hardwaredefekt ausgehen. In diesem Fall hilft die Suche im Internet nach den Erfahrungen anderer Nutzer mit ähnlicher Hardware eventuell weiter.

Ein Beispiel dafür ist ein Notebook in der Redaktion, bei dem sich USB-3.0-Festplatten im Betrieb immer wieder spontan und unregelmäßig abmelden. Es ist deshalb unmöglich, größere oder auch viele Dateien auf das Laufwerk zu kopieren. Dieses Problem tritt unter mehreren Linux-Distributionen sowie unter Windows auf, weshalb das System beziehungsweise ein Treiber als Ursache eher ausscheiden. Eine sinnvolle Analyse des Fehlers ist jedoch kaum möglich. Linux meldet in dieser Situation lediglich, dass das USB-Laufwerk entfernt wurde, allerdings nicht warum. Derartige Meldungen sind auch bei qualitativ minderwertigen USB-Kabeln oder SATA/USB-Adaptern zu beobachten. Da im Internet zahlreiche Besitzer des gleichen Notebookmodells diesen Ausfall beschreiben, kann man von einem Serienfehler beim USB-3.0- Port ausgehen, der sich per Software nicht beseitigen lässt. In diesem Fall bleibt nur, das Gerät zurückzugeben und ein anderes Notebook zu erwerben.

Wenn die Linux-Installation hingegen zunächst erfolgreich war und ein Fehler erst nach mehreren Monaten auftritt, dann gibt es zumindest zwei Möglichkeiten: Ein kürzlich durchgeführtes Update kann verantwortlich sein, aber auch ein Problem mit der Hardware, beispielsweise ein unzureichend gekühlter Prozessor. Linux bietet einige Tools und Protokolle, mit denen man dem Fehler auf die Spur kommen kann.

Die Logdateien auswerten

Protokolle untersuchen: In den Linux-Protokollen sind Informationen und Fehlermeldungen zu finden. Viele Fehlermeldungen sind jedoch harmlos und können ignoriert werden.
Vergrößern Protokolle untersuchen: In den Linux-Protokollen sind Informationen und Fehlermeldungen zu finden. Viele Fehlermeldungen sind jedoch harmlos und können ignoriert werden.

Standardmäßig zeichnet Linux nahezu alles auf, was für die Analyse wichtig ist. Die Protokolle liegen im Ordner „/var/log“. Je nach System und installierten Diensten sind hier unterschiedliche Dateien zu finden. Eines der interessantesten Protokolle ist „/varlog /syslog“, das bei einigen Systemen auch „/var/log/messages“ heißt. Den Inhalt lassen Sie sich in einem Terminal mit 

cat /var/log/syslog

ausgeben. Scrollen Sie nach oben und halten Sie Ausschau nach möglichen Fehlermeldungen. Mit der Zeile 

tail -f /var/log/syslog

erhalten Sie die letzten Logeinträge und die Anzeige wird aktualisiert, wenn neue Meldungen verfügbar sind. Damit lässt sich das System fortlaufend überwachen.

Das Kernel-Protokoll „/var/log/dmesg“ gibt Auskunft über erkannte Hardware, Laufwerke und Aktionen von Treibern. Es wird bei jedem Bootvorgang neu erstellt. Stürzen Prozesse wegen fehlerhafter Treiber oder defekter Hardware ab, dann wird der Kernel dies hier melden. Die Datei lässt sich ebenfalls über cat betrachten, besser geht es jedoch so: 

dmesg -T

Die Option „-T“ bewirkt eine Ausgabe mit Zeitstempel, was eine genaue Untersuchung des Zeitpunkts ermöglicht, an dem ein Fehler aufgetreten ist. Das Tool kennt einige Optionen, über die sich die Ausgabe eingrenzen lässt.

dmesg -T -l err

Dies filtert die Fehlermeldungen aus. Weitere Optionen liefert die Hilfe, die Sie sich mit dem Parameter „-h“ anzeigen lassen. Wer eine grafische Oberfläche bevorzugt, der startet unter Ubuntu/Linux Mint das Tool Gnome-Logs, das Sie über „Aktivitäten“ oder das Startmenü mit einer Suche nach „Protokolle“ finden. Über die Registerkarten kann man den gewünschten Bereich ansteuern, beispielsweise „System“ oder „Hardware“. Die Anzeige aktualisiert sich nicht automatisch, sondern erst, wenn man zwischen den Registerkarten wechselt.

Nicht jeder Fehler hat ernste Auswirkungen

Die Linux-Logdateien enthalten zahlreiche Informationen, Warnungen und meist auch Fehlermeldungen. Die Kunst besteht darin, die relevanten Meldungen herauszulesen. Ansonsten besteht die Gefahr, dass man einem vermeintlichen Fehler nachjagt, der jedoch nichts mit dem aufgetretenen Problem zu tun hat. Hierzu folgendes Beispiel: Einer unserer Testrechner ist mit einer Nvidia-Grafikkarte RTX 2060 ausgestattet. Diese läuft anscheinend ohne Auffälligkeiten mit einem aktuellen Nvidia-Treiber. Im Kernel-Protokoll tauchen aber die Zeilen

kernel: ucsi_ccg 0-0008: ucsi_ccg_init failed - -110 
kernel: nvidia-gpu 0000:01:00.3:i2c timeout error e0000000 

auf (Kernel 5.4.0). Eine Recherche im Internet liefert die Info, dass es sich bei „ucsi_ccg“ um einen Treiber für den USB-C-Port auf der Nvidia-Grafikkarte handelt. Dieser dient vor allem für den Anschluss von VR-Brillen, könnte aber auch für andere Zwecke genutzt werden. Allerdings unterstützt der Treiber die Grafikkarte nicht. Der Kernel versucht, den Treiber dennoch zu laden, was in der Folge diese Fehlermeldungen produziert. Das ist in unserem Fall nur ein Schönheitsfehler. Um diesen loszuwerden, hilft eine neue Datei „/etc/modprobe.d/ blacklist-nvidia-usb.conf“ mit der Zeile 

blacklist ucsi_ccg

als Inhalt. Der Treiber wird dadurch nicht mehr geladen. Mit einem neueren Kernel wird das Problem wahrscheinlich behoben sein. Der Treiber funktioniert dann auch mit unserer Grafikkarte oder er wird gar nicht erst geladen.

Temperaturen analysieren

Wärmeentwicklung: Eine zu heiße CPU kann einen Systemabsturz bewirken. Das Tool Psensor zeigt die Temperaturen an und Sie sehen sofort, ob die Kühlung Ihres PCs ausreicht.
Vergrößern Wärmeentwicklung: Eine zu heiße CPU kann einen Systemabsturz bewirken. Das Tool Psensor zeigt die Temperaturen an und Sie sehen sofort, ob die Kühlung Ihres PCs ausreicht.

Zu hohe Temperaturen bereiten stets Probleme. Wenn sich der Prozessor überhitzt, reduziert er zuerst die Taktfrequenz, um die Temperatur zu reduzieren. Wenn das nicht mehr hilft, schaltet er sich ganz aus – und das System stürzt ab. Es lohnt sich daher, die Temperaturen regelmäßig zu überprüfen, und wenn erforderlich, den Lüfter auszutauschen oder zu reinigen.

Für Temperaturmessungen installieren Sie das Paket „lm_sensors“, das Sie mittels 

sudo sensors-detect --auto 

konfigurieren.

Das Tool Psensor, das Sie über das gleichnamige Paket installieren, zeigt Werte wie CPU-, GPU- und Festplattentemperatur in einer grafischen Oberfläche an.

Lesetipp:   Die 20 häufigsten Linux-Probleme lösen

PC-WELT Marktplatz

2644269