In Abwesenheit von iotop ist welcher Befehl am besten geeignet, um einen I / O-gebundenen Prozess abzurufen

10

Schlagen Sie mir den besten Weg vor, um einen begrenzten Prozess aufzulisten. Ich weiß, dass iotop der beste Weg ist, um eine Liste zu erhalten, möchte aber eine alternative Option, da mein System eine große Anzahl von D-Status-Prozessen anzeigt.

vnix27
quelle

Antworten:

9

Dupliziert von: Linux - Wie kann ich sehen, was auf Festplatten-E / A wartet? Diese URL zeigt eine einfache Lösung.

Und Sie können die Festplatten-E / A-Protokollierung aktivieren, indem Sie 1 eingeben /proc/sys/vm/block_dump. Dann erhalten tail -f /var/log/syslogSie Lese- und Schreibvorgänge (Prozess, PID, Operation, Blöcke und Gerät). Vergessen Sie nicht, auf /proc/sys/vm/block_dumpNull zurückzukehren, wenn Sie fertig sind.

Giftbit
quelle
Es ist die kern.logund / oder debugDatei auf Debian-basierten Distributionen.
Fab
11

Sie können die E / A-Nutzung eines beliebigen Prozesses überprüfen, indem Sie sich die /proc/[pid]/ioDatei ansehen. Beispiel:

$ cat /proc/1775/io
read_bytes: 4366336
write_bytes: 45056
cancelled_write_bytes: 229376
Dogbane
quelle
2
iotopJetzt muss die NET_ADMIN-Fähigkeit (oder sudo / root) ausgeführt werden. Dies ist also eine großartige Alternative als die Verwendung von setcap cap_net_admin+ep /usr/sbin/iotopi denke .. thx !!
Wassermann Power
3
Sie müssen die tatsächlich eingestellt cap_net_adminauf pythonfür diese Arbeit. setcap cap_net_admin+ep /usr/bin/python2.7beispielsweise.
Gam3