Immer größere Datenmassen sicher zu speichern ist eine Herausforderung für jede IT-Infrastruktur. Schon mit Gigabit-Ethernet lassen sich aber ... (mehr)

Standard-I/O

Vor dem Mmap- findet sich ein Fstat-Aufruf mit dem Dateideskriptor 3, der von dem darüber befindlichen Open stammt. Vielleicht haben Sie sich schon gewundert, wieso in den Strace-Logs die File-Handles immer mit 3 beginnen. Die Antwort darauf ist, dass die Zahlen von 0 bis 2 bereits vergeben sind: 0 ist die Standardeingabe (Stdin), 1 ist die Standardausgabe (Stdout) und 2 die Standardfehlerausgabe (Stderr).

Fstat liefert detaillierte Informationen über eine Datei. Das erste Argument des Systemaufrufs ist der Dateideskriptor. Danach folgt der Inhalt einer Struktur namens »stat« . Strace zeigt zwar nicht alles an, wie die Punkte bereits andeuten, aber sie enthält immerhin die User- und Gruppen-ID des Eigentümers, die Device-ID, das letzte Modifikationsdatum und so weiter. Mehr davon zeigt Strace, wenn Sie es mit dem Schalter »-v« aufrufen. Zu sehen sind die Dateirechte und die Größe in Bytes.

Die Rechteangabe entspricht derjenigen von Chmod, also zeigt das 0644 in Zeile 8 Leserechte für User und Gruppe sowie Schreib- und Ausführungsrechte für den User an. Davor steht noch ein Flag, das den Dateityp (Verzeichnis, Datei und so weiter) angibt: »S_IFREG« steht für eine reguläre Datei.

Strace-Optionen

Bisher diente der Schalter »-o« nur dazu, die Ausgabe von Strace in eine Datei zu schreiben. Für fortgeschrittene Anwendungen kennt Strace auch noch ein paar andere Optionen. So verfolgt Strace mit »-f« auch die Kindprozesse, die das Programm erzeugt. Der Schalter »-F« macht das Gleiche mit Kindprozessen, die mit Vfork erzeugt wurden, einer etwas leichtgewichtigeren Fork-Variante, die nicht alle Prozessinformationen des Elternprozesses kopiert.

Ähnliche Artikel

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023