Lösung 1:
iostat kann solche Statistiken melden. Normalerweise in Ihrer Distribution im Paket sysstat enthalten.
dstat könnte auch einen Blick wert sein, es ist ein moderner Ersatz.
Lösung 2:
Wenn Sie IO-Accounting in Ihrem Kernel haben, können Sie iotop verwenden solche Informationen zu geben. Außerdem können Überwachungstools wie collectd die Daten aufzeichnen und darüber berichten.
Lösung 3:
Um herauszufinden, was die hohe Auslastung verursacht, können Sie einige Dinge überprüfen.
vmstat -wzeigt Ihnen ovierwiem (Prozesse, Swap, Mem, CPU, IO, System)pmstat -P ALLliefert Ihnen Statistiken (mit %iowait) pro CPU-Kerniostat -xSuchen Sie nach einem hohen %util oder langem Warten oder einer großen durchschnittlichen Warteschlangengröße- graben Sie tiefer mit
iotop
- graben Sie tiefer mit
ps -axSuchen Sie nach Zustand D, der unterbrechungsfreier Schlaf ist (normalerweise IO), führen Sie ihn noch einmal aus und prüfen Sie, ob sie sich noch im D-Zustand befinden- graben Sie tiefer mit strace
- Dateien und Verbindungen dieser Prozesse mit lsof und netstat prüfen
- sar/sysstat - mit diesem Tool können Sie nicht nur "Jetzt"-Statistiken untersuchen, sondern auch überprüfen, was gestern um Mitternacht passiert ist
sar -b- allgemeine io-Aktivitätensar -d- individuelle Block-Geräte-IO-Aktivitäten