iotop - Überwachung der Linux-Festplatten-I/O-Aktivität und -Nutzung pro Prozess
Iotop ist ein Open-Source- und kostenloses Dienstprogramm, das dem top-Befehl ähnelt und eine einfache Möglichkeit bietet, Details zur Linux-Festplatten-I/O-Nutzung zu überwachen und eine Tabelle der vorhandenen I/O-Auslastung nach Prozessen oder Threads auf den Systemen auszugeben.
Das iotop-Tool basiert auf der Python-Programmierung und erfordert die Kernel-Buchhaltungsfunktion, um Prozesse zu überwachen und anzuzeigen. Es ist ein sehr nützliches Tool für Systemadministratoren, um den spezifischen Prozess zu verfolgen, der zu einer hohen Anzahl von Lese-/Schreibvorgängen auf der Festplatte führen kann.
Iotop Voraussetzungen
- Kernel 2.6.20 oder höher
- Python 2.7 oder höher
In diesem Artikel wird erläutert, wie Sie das Programm iotop installieren, um die E/A (Ein-/Ausgabe) von Linux-Geräten pro Prozess in Linux-Systemen zu überwachen und zu verfolgen.
Installieren Sie das Iotop Disk I/O Monitoring Tool unter Linux
Wie ich bereits oben sagte, dass iotop den neuesten Kernel 2.6.20 und Python 2.7 benötigt, aktualisieren wir zuerst beide mit Hilfe des folgenden Befehls.
-------------- On RHEL, CentOS and Fedora --------------
yum update
-------------- On Fedora 22+ Releases --------------
dnf update
-------------- On Debian, Ubuntu and Linux Mint --------------
apt-get update
Überprüfen Sie als Nächstes Ihre Kernel- und Python-Version, indem Sie Folgendes ausführen:
# uname -r
python -V
Wichtig: Zum Zeitpunkt des Schreibens dieses Artikels verwendet CentOS/RHEL 5.x eine ältere Version von Python und es ist nicht möglich, iotop zu installieren. Sie können jedoch das Programm dstat verwenden, das eine ähnliche Funktion wie iotop ausführt.
Installieren von iotop mit dem Package Manager
Um iotop über Ihren Paketmanager zu installieren, wählen Sie den entsprechenden Befehl aus der folgenden Liste aus.
-------------- On RHEL, CentOS and Fedora --------------
yum install iotop
-------------- On Fedora 22+ Releases --------------
dnf install iotop
-------------- On Debian, Ubuntu and Linux Mint --------------
apt-get install iotop
Wichtig: Wenn Sie iotop aus Ihren Standard-Repositories installieren, erhalten Sie eine ältere Version. Wenn Sie eine aktuelle Version von iotop suchen, sollten Sie in Erwägung ziehen, aus dem Quellcode zu kompilieren, indem Sie die folgenden Anweisungen befolgen.
Installieren Sie iotop von der Quelle
Um die neueste Version von iotop zu installieren, gehen Sie auf die offizielle Projektseite und laden Sie das neueste Quellpaket herunter und kompilieren Sie es aus dem Quellcode mit der folgenden Befehlsreihe:
# wget http://guichaz.free.fr/iotop/files/iotop-0.6.tar.bz2
tar -xjvf iotop-0.6.tar.bz2
cd iotop-0.6/
./setup.py install
Wichtig: Sie können iotop innerhalb des Verzeichnisses ausführen, d.h. (indem Sie ./iotop.py ausführen) oder Sie können den Installationsprogramm ./setup.py install Befehl ausführen, um iotop unter /usr/bin zu installieren:
So verwenden Sie iotop unter Linux
Am einfachsten ist es, iotop ohne Argumente auszuführen, wie gezeigt.
# iotop
Sie sollten eine Liste der ausgeführten Prozesse zusammen mit Informationen über ihre aktuelle Datenträger-E/A-Nutzung erhalten:
Die Überschriften der einzelnen Spalten sind selbsterklärend, aber es gibt zwei wichtige Dinge, die hier zu beachten sind:
- IO – In der Spalte "IO" wird die gesamte I/O-Auslastung (Festplatte und Swap) für jeden Prozess angezeigt.
- SWAPIN – Die Spalte "SwapIn" zeigt die Swap-Nutzung für jeden Prozess an.
Ich empfehle, iotop mit der Option -o oder –only zu verwenden, um aktuelle Prozesse oder Threads zu sehen, die tatsächlich E/A ausführen, anstatt alle Prozesse oder Threads zu überwachen.
# iotop --only
Erhalten Sie Benachrichtigungen zu Linux-Festplatten-I/O-Aktivitäten
Sie können das Cron-Job-Scheduling-Programm verwenden, um iotop jede Minute auszuführen, um jede erkannte I/O-Aktivität zu verfolgen und eine Warnung an Ihre E-Mail-Adresse zu senden.
# vi /etc/cron.d/iotop
Fügen Sie die folgenden Zeilen in die Datei ein:
[email
* * * * * root iotop -botqqq --iter=3 >> /var/log/iotop
Wenn Sie möchten, können Sie den obigen Befehl gemäß Ihren Anforderungen anpassen.
Um mehr über die Verwendung und die Optionen des iotop-Programms zu erfahren, führen Sie den folgenden Befehl aus, um die Manpages zu überprüfen.
# man iotopEinige wichtige iotop-Nutzung und Tastenkombinationen.
- Bewegen Sie die Pfeiltaste nach links oder rechts, um die Sortierung zu ändern.
- Verwenden Sie die Option –version, um die Versionsnummer anzuzeigen und den Vorgang zu beenden.
- Verwenden Sie die Option -h, um Informationen zur Nutzung anzuzeigen.
- Verwenden Sie die Option -r, um die Sortierreihenfolge umzukehren.
- Verwenden Sie die Option -o, um Prozesse oder Threads zu überprüfen.
- Verwenden Sie die Option -b, um den nicht-interaktiven Modus zu aktivieren und die Protokollierung der E/A-Nutzung zu aktivieren.
- Verwenden Sie -p PID, um alle Prozesse/Threads aufzulisten, die überwacht werden sollen.
- Verwenden Sie die Option -u USER, um alle zu überwachenden Benutzer aufzulisten.
- Verwenden Sie die Option -P, um nur Prozesse aufzulisten. Normalerweise zeigt iotop alle Threads an.
- Verwenden Sie die Option -a, um die akkumulierten E/A-Vorgänge anstelle der Bandbreite zu überprüfen.
Alle oben genannten iotop-Optionen sind ziemlich einfach. Die Benutzeroberfläche sieht fast genauso aus und funktioniert genauso wie der Linux-Top-Befehl.
Iotop kann äußerst nützlich sein, um Linux-Prozesse aufzuspüren, die eine hohe Auslagerungsspeicherauslastung verwenden oder eine hohe Menge an Festplatten-E/A-Aktivitäten verursachen.

