Cliffhanger

Hängt ein Programm fest, ist es interessant herauszufinden, woran das nun im Detail liegt. Strace zeigt diesen Zustand wie in Listing 2 gezeigt an. Bei flock handelt es sich um eine Funktion, die eine geöffnete Datei mit einem "File Lock" markiert oder diese Marke entfernt. Um welche Datei es sich dabei handelt, verrät gegebenenfalls ein Aufruf von readlink. Dieses Programm erwartet als Argument einen Dateideskriptor, im Beispiel 5, der im /proc-Dateisystem unter der fraglichen PID vorhanden ist (Listing 3). Im besten Fall gibt Readlink dann die zugehörige Datei aus. Allerdings verbinden sich Sockets, Pipes und Ähnliches nicht immer über Dateideskriptoren mit den Programmen.

Das am Ende von Listing 2 ausgegebene LOCK_EX zeigt an, dass das Anlegen des exklusiven Deskriptors fehlschlägt. Dazu erläutert man 2 flock: Place an exclusive lock. Only one process may hold an exclusive lock for a given file at a given time. In diesem Fall blockiert also offensichtlich ein anderer Prozess die Ressource /dev/urandom, wie die Ausgabe von Readlink zeigt. Der Fehler liegt also gar nicht beim beobachteten Programm; der eigentliche Übeltäter lässt sich nun mittels lsof dingfest machen [3].

Listing 2

$ sudo strace -p 1227
Process 1227 attached - interrupt to quit
flock(5, LOCK_EX

Listing 3

$ readlink /proc/1227/fd/5
/dev/urandom

TIPP

Es gibt noch eine hilfreiche Variante von Strace, ltrace: Sie beobachtet anstelle der Systemaufrufe die Bibliotheksaufrufe.

Fazit

Mit Strace haben Sie ein schnelles und einfach anzuwendendes Werkzeug an der Hand, das in vielen Fällen überraschend gute Ergebnisse zeigt [4]. Ohne Optionen oder nur mit -p aufgerufen, hilft es, Lebenszeichen von scheinbar hängenden Prozessen zu erhalten. Mit detaillierten Argumenten für die Option -e lassen sich zielgenau die gewünschten Informationen herausfiltern. 

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 3 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Präzise Kontrolle
    Auf einem typischen Linux-System laufen viele Anwendungen und Dienste gleichzeitig. Mit den richtigen Befehlen verschaffen Sie sich einen Überblick und greifend steuernd ein.
  • Alles im Blick
    Viele Diagnose-Tools verfügen über eine ganz spezielle Syntax. Das erschwert den Umgang und macht die Ausgabe unübersichtlich. Sysdig fasst die wichtigsten Vertreter unter einer einheitlichen Oberfläche zusammen.
  • Mit SHC Bash-Skripte kompilieren
    Der Shell Script Compiler wandelt Skripte in Binärprogramme um. Das schützt vor unbeabsichtigten Veränderungen, birgt aber auch einige Tücken.
  • GNOME und KDE
    In regelmäßigen Abständen erscheinen neue Releases der großen Desktop-Umgebungen KDE und GNOME und lassen den Benutzer mit vielen Fragen allein: Was hat sich geändert, lohnt ein Update und wie machen sich die Kontrahenten im direkten Vergleich?
  • Systemüberwachung auf der Konsole
    Top, der Klassiker zur Unix-Systemüberwachung, hat über die Jahre viele nützliche Ableger angeregt. Sie alle dienen der Überwachung und teilweise auch der Steuerung verschiedenster Vorgänge auf dem Rechner.
Kommentare

Infos zur Publikation

LU 05/2018: GEODATEN

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

HINWEIS ZU PAYPAL: Die Zahlung ist ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!

Stellenmarkt

Aktuelle Fragen

added to access control list
Ingrid Kroll, 27.03.2018 07:59, 10 Antworten
Hallo allerseits, bin einfache Nutzerin und absolut Linux-unwissend............ Beim ganz norm...
Passwortsicherheit
Joe Cole, 15.03.2018 15:15, 2 Antworten
Ich bin derzeit selbständig und meine Existenz hängt am meinem Unternehmen. Wahrscheinlich verfol...
Brother drucker einrichten.
Achim Zerrer, 13.03.2018 11:26, 1 Antworten
Da mein Rechner abgestürzt war, musste ich das Betriebssystem neu einrichten. Jetzt hänge ich wi...
Internet abschalten
Karl-Heinz Hauser, 20.02.2018 20:10, 2 Antworten
In der Symbolleiste kann man das Kabelnetzwerk ein und ausschalten. Wie sicher ist die Abschaltu...
JQuery-Script läuft nicht mit Linux-Browsern
Stefan Jahn, 16.02.2018 12:49, 2 Antworten
Hallo zusammen, ...folgender goldener Code (ein jQuery-Script als Ergebnis verschiedener Exper...