So überprüfen Sie, welcher Prozess auf das Dateisystem Solaris schreibt

So überprüfen Sie, welcher Prozess auf das Dateisystem Solaris schreibt

Ich muss herausfinden, welcher Prozess ununterbrochen auf die Festplatte schreibt.

Ich habe versucht, prstat -tdie Liste der laufenden Prozesse abzurufen, kann jedoch nicht identifizieren/finden, um welchen Prozess es sich handelt.

Beim Ausführen df -kkann ich sehen, dass der Speicherplatz auf einem bestimmten Pfad der Festplatte kontinuierlich abnimmt.

Nachdem Sie alle Prozesse beendet haben (und alle externen Verbindungen geschlossen haben), die jemals auf die Festplatte schreiben könnten, gibt es immer noch etwas, das darauf schreibt.

Betriebssystem Solaris 10

Antwort1

Es werden nicht die tatsächlichen IO-Operationen angezeigt, aber Sie können auch verwendendas fuserDienstprogrammum Prozesse zu identifizieren, die das Dateisystem in irgendeiner Weise verwenden, auch solche, die keine tatsächlichen IO verursachen oder IO auf eine Weise durchführen, die nicht auf einen bestimmten Prozess zurückgeführt werden kann ( mmap()von Dateien ist ein Beispiel, wobei eine Datei mmap()von mehreren Prozessen verwendet werden kann):

Zusammenfassung

/usr/sbin/fuser [-c | -d | -f] [-nu] [-k | -s sig] files 
     [ [- ] [-c | -d | -f] [-nu] [-k | -s sig] files] ...

Beschreibung

Das Dienstprogramm „Fuser“ zeigt die Prozess-IDs der Prozesse an, die die als Argumente angegebenen Dateien verwenden.

Auf jede Prozess-ID folgt ein Buchstabencode. Diese Buchstabencodes werden wie folgt interpretiert. Wenn der Prozess die Datei als

c Zeigt an, dass der Prozess die Datei als aktuelles Verzeichnis verwendet.

m Gibt an, dass der Prozess eine mit mmap(2) gemappte Datei verwendet. Weitere Einzelheiten finden Sie unter mmap(2).

n Zeigt an, dass der Prozess eine nicht blockierende obligatorische Sperre für die Datei aufrechterhält.

o Zeigt an, dass der Prozess die Datei als geöffnete Datei verwendet.

r Zeigt an, dass der Prozess die Datei als Stammverzeichnis verwendet.

t Zeigt an, dass der Prozess die Datei als Textdatei verwendet.

y Zeigt an, dass der Prozess die Datei als Steuerterminal verwendet.

Beispiel:

Vorausgesetzt, Ihr Home-Verzeichnis befindet sich auf einem separaten Dateisystem, das unter eingehängt ist /export/home, werden hier alle Prozesse angezeigt, die in irgendeiner Weise Dateien auf diesem Dateisystem verwenden, einschließlich der Prozesse, die keine E/A durchführen, aber ein aktuelles Arbeitsverzeichnis in diesem Dateisystem haben, sowie Prozesse, die Dateien aus diesem Dateisystem im Speicher zugeordnet haben:

fuser -c /export/home

verwandte Informationen