Iotop ist ein gutes Werkzeug für das, was Sie wollen. Es ermöglicht auch die Anzeige der kumulierten E/A-Menge für DISK READ, DISK WRITE, SWAPIN und IO (Gesamtprozentsatz). Dies geschieht über eine raffinierte Schnittstelle:
- Sie drücken einfach a auf der Tastatur, und es sortiert die hungrigsten Prozesse ganz oben.
- Um die Reihenfolge umzukehren, drücken Sie einfach r .
- Wenn Sie nach anderen Spalten sortieren möchten, drücken Sie einfach die linke/rechte Taste.
Wie top
, die Präsentation ist ziemlich beschäftigt. Eine andere Sache ist, dass es nicht die unzähligen Optionen hat, die top
hat (z. B. kann ich keine der Spalten ausblenden, an denen ich nicht interessiert bin), aber das Tool ist mehr als gut genug für seinen speziellen Zweck.
Sie können lsof
verwenden (Mann lsof). Das Folgende gibt eine Liste aller Dateien zurück, die zum Schreiben geöffnet sind:
lsof | grep -e "[[:digit:]]\+w"
Gerade bei geringer Plattenaktivität ist es notwendig, iotop im Batch-Modus zu verwenden, um zu verhindern, dass kurze Zugriffsleitungen schnell verschwinden. Die Antwort von Wie protokolliere ich das Lesen/Schreiben des Dateisystems nach Dateiname in Linux? zeigt, wie das geht.
Bisher iotop
ist die beste Gesamtlösung. Der folgende Befehl gibt Ihnen eine Echtzeitausgabe aller Prozesse, die die Festplatte verwenden.
iotop -bktoqqq -d .5
where: -b is batch mode
-k is kilobytes/s
-t adds timestamp
-o only show processes or threads actually doing I/O
-qqq removes output headers
-d .5 updates every .5 seconds
Sobald Sie die Prozess-ID haben, können Sie die Dateien auch mit
finden lsof -p $PID