ADMIN-Tipp: Dtruss - Strace-Ersatz für OS X

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

Unter Linux ist das Strace-Kommando bei der Fehlersuche oft das Tool der Wahl. Leider fehlt es beim BSD-basierten Mac OS X. Ein Dtrace-basiertes Skript bietet einen Ausweg. 

Startet ein Programm einfach nicht und gibt dabei auch keinen Hinweis auf den Grund, hilft oft das Linux-Tool "strace" weiter, das die verwendeten Systemaufrufe protokolliert. Bei dem BSD-basierten Mac OS X fehlt das kleine Programm aber. Eine Alternative ist das Skript "/usr/bin/dtruss", das bei der Namensgebung an das alte "truss" von Solaris erinnert, aber mit dem "d" auf das darunterliegende Dtrace-Framework verweist, das OS X ebenfalls von Solaris importiert hat. Der Aufruf gestaltet sich einfach:

dtruss ls

Damit verfolgt "dtruss" die Systemaufrufe beim Start des "ls"-Kommandos. Per Prozess-ID lässt sich ein Programm so tracen:

dtruss -p 2517

Schließlich kann "dtruss" mit der Aufrufoption sogar den Namen des aufgerufenen Prozesses heranziehen.

dtruss -n tar

Wie "strace" verwendet auch "dtruss", den Schalter "-f", um Kindprozesse ("fork") zu verfolgen. Weil es sich um ein Shell-Skript handelt, kann "dtruss" auch als Beispiel fürs Schreiben von eigenen Dtrace-Skripts unter OS X, (Open) Solaris und FreeBSD dienen. 

01.08.2012
BSD

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

VLAN-Grundlagen

Oft reicht ein kleiner Fehler, um ein ganzes Netzwerk lahmzulegen. Ein unbedacht installierter DHCP-Server streut plötzlich falsche Adressen, und der Verkehr kommt zum Erliegen. Virtuelle Netzwerke (VLANs) schützen vor solchen und ähnlichen Katastrophen. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Ausgabe /2014

Was halten Sie von Zertifizierungen, die Fachkenntnisse und Fertigkeiten nachweisen?

  • Sie sind in der Praxis nutzlos
  • Sind für uns ein wichtiges Einstellungskriterium
  • Liefern einen Anhaltspunkt für die Qualifikation