In diesem Handbuch erfahren Sie, wie Sie die CPU-Auslastung unter Linux überprüfen.
CPU-Auslastung unter Linux
Die CPU ist die Hauptquelle der gesamten Rechenleistung, die ein Computer bietet. Um das Beste daraus zu machen, ist es notwendig, die Nutzung zu verwalten und zu optimieren.
Moderne Betriebssysteme sind darauf optimiert, die CPU so effizient wie möglich zu nutzen. Sogar andere Apps da draußen sind ziemlich optimiert. Benutzer sind jedoch möglicherweise nicht. In meinem Fall spiele ich zum Beispiel Spiele, während Hunderte von Browser-Tabs geöffnet sind und mehrere Hintergrundaufgaben ausgeführt werden. Während die gesamte Software optimiert ist, führt meine Verwendungsweise zu einer höheren CPU-Last.
Wenn mehrere Benutzer angemeldet sind, wird die CPU-Auslastung automatisch hoch. Der Systemadministrator möchte es jedoch möglicherweise im Auge behalten, um sicherzustellen, dass nicht jemand alles in Beschlag nimmt, was zu einer insgesamt schlechten Systemleistung und Erfahrung führt. Wenn ein bestimmter Prozess/eine bestimmte App zu viel CPU-Auslastung verursacht, kann es sein, dass er nicht richtig funktioniert, fehlerhaft ist oder das liegt in der Natur der Sache.
Manchmal kann eine ungewöhnliche CPU-Auslastung auch auf einen Systemeinbruch hinweisen.
Basierend auf all diesen Informationen kann die Überprüfung der CPU-Auslastung sehr aufschlussreich sein.
Überprüfen Sie die CPU-Auslastung unter Linux
Im Fall von Linux gibt es zahlreiche Tools zur Überwachung der CPU-Auslastung. Es verfügt über verschiedene integrierte Systemaufrufe, um Leistungsmesswerte zu extrahieren. Einige der Tools sind in allen Linux-Distributionen vorinstalliert, einige erfordern möglicherweise eine manuelle Installation.
Alle folgenden Methoden werden auf Ubuntu 20 . demonstriert.04.1 LTS. Sie funktionieren jedoch gut auf jeder anderen modernen Distribution.
Überprüfen Sie die CPU-Auslastung mit top
Mit top können Sie das System in Echtzeit überwachen. Es enthält eine kurze Zusammenfassung der Systeminformationen sowie eine Liste der Prozesse und Threads, die derzeit vom Linux-Kernel verwaltet werden. Es bietet auch interaktive Optionen, um sein Verhalten zu ändern und verschiedene Aktionen auszuführen.
Das Top-Tool kann die CPU-Auslastung anzeigen. Starten Sie das Tool.
$ nach oben
Hier ist die wichtigste Zeile, auf die man sich konzentrieren sollte, die dritte. Die Ausgabewerte werden kurz erklärt. Jeder Wert erklärt die Zeit, die die CPU damit verbringt, etwas auszuführen.
- uns: Zeitaufwand für das Ausführen von Prozessen für Menschen im „Benutzerraum“.
- sy: Zeit für die Ausführung von „Kernelspace“-Prozessen.
- ni: Zeit für das Ausführen von Prozessen mit einem benutzerdefinierten (manuell eingestellten) schönen Wert.
- id: Im Leerlauf verbrachte Zeit.
- wa: Wartezeit auf den Abschluss der E/A-Anforderung.
- hi: Zeitaufwand für die Wartung von Hardware-Interrupts.
- si: Zeitaufwand für die Wartung von Software-Interrupts.
- st: Zeitverlust für die Ausführung der virtuellen Maschine, auch bekannt als „Zeitstehlen“.
Jetzt können Sie die Prozessliste mit verschiedenen Hotkeys sortieren und filtern. Hier habe ich diejenigen beschrieben, die mit der CPU-Auslastung verbunden sind.
- P: Prozesse nach CPU-Auslastung sortieren.
- I: Inaktive Prozesse aus der Liste entfernen. Um zurückzukehren, drücken Sie erneut „I“ “.
- M: Sortiere die Liste nach Speicherverbrauch.
- S: Sortieren Sie die Liste danach, wie lange Prozesse bereits ausgeführt wurden.
- U: Filtern Sie die Prozesse nach dem Eigentümer.
- K: Einen Prozess beenden. Benötigt die PID des Prozesses.
Überprüfen Sie die CPU-Auslastung mit htop
Htop und top sind beide im Wesentlichen die gleichen Tools. Beide bieten die gleichen Funktionen in Bezug auf die Systemüberwachungsfähigkeit. htop bietet jedoch eine bessere Lebensqualität.
Die Standardanzeige des htop ist komfortabler zu arbeiten. Die Benutzeroberfläche hat eine bessere Übersichtlichkeit als die Oberseite. Die Texte sind koloriert und schön anzusehen. Es bietet auch horizontales und vertikales Scrollen.
Während die meisten Distributionen top standardmäßig installiert haben, müssen Sie htop manuell installieren install. Es ist am besten, htop mit Snap zu installieren, da es auf jeder Linux-Distribution funktioniert. Angenommen, Sie haben Snappy (den Snap-Paketmanager) installiert, führen Sie den folgenden Befehl aus:.
$ sudo snap install htop
htop starten.
$ htop
Ich werde nichts weiter besprechen, da die Verwendung von htop die gleiche ist wie die von top.
Überprüfen Sie die CPU-Auslastung mit iostat
Das iostat-Tool meldet CPU- und E/A-Nutzungsstatistiken. Es ist ein einfaches Werkzeug mit einfacher Ausgabe. Es wird jedoch nur die Statistik des Moments gemeldet, in dem das Tool ausgeführt wurde. Im Gegensatz zu top oder htop bietet iostat keine Echtzeit-Systemüberwachung.
Das iostat-Tool ist Teil des sysstat-Pakets. Es ist auf fast jeder Linux-Distribution verfügbar. Angenommen, Sie haben das sysstat-Paket installiert, gehen wir weiter.
iostat starten.
$ iostat
Interesse an einem ausführlicheren Bericht? Verwenden Sie das Flag „-c“, um die CPU-Auslastung von Benutzerprozessen, Systemprozessen, E/A-Wartezeiten und Leerlaufzeiten anzuzeigen.
$ iostat -c
Verwenden Sie das Flag „-x“ für erweiterte Statistiken. Das Flag „-t“ legt fest, wie oft jeder Bericht angezeigt werden soll.
$ iostat -xtc 5 2
Überprüfen Sie die CPU-Auslastung mit mpstat
Das mpstat-Tool ist Teil des sysstat-Pakets. Das Tool meldet die Auslastung einzelner Prozessoren oder Prozessorkerne.
Um mpstat verwenden zu können, muss das sysstat-Paket auf Ihrem System installiert sein. Angenommen, Sie haben das Paket bereits installiert, gehen wir weiter.
mpstat starten.
$mpstat
Das bedeuten die Werte. Jeder Wert beschreibt die CPU-Auslastung auf einem bestimmten Level.
- %usr: CPU-Auslastung auf Benutzerebene.
- %nice: CPU-Auslastung durch „nette“ Benutzerprozesse.
- %sys: CPU-Auslastung durch den Kernel.
- %iowait: Warten auf Lesen/Schreiben der Festplatte.
- %irq: Umgang mit Hardware-Interrupts.
- %soft: Umgang mit Software-Interrupts.
- %steal: Erzwungenes Warten auf einen Hypervisor, der virtuelle Prozessoren handhabt.
- %guest: Ausführen eines virtuellen Prozessors.
- %idle: Stehender Leerlauf.
Überprüfen Sie die CPU-Auslastung mit sar
Der Befehl sar dient zum Sammeln und Melden von Systemaktivitätsinformationen. Es bietet einen kurzen und einfachen Bericht über die CPU-Auslastung.
Wir können sar verwenden, um die CPU-Informationen in einem bestimmten Intervall (in Sekunden) anzubieten. Obwohl es kein Echtzeitbericht ist, ist es dennoch besser, damit zu arbeiten.
$ sar
Im letzten Beispiel würde sar unendlich laufen. Wir können definieren, wie viele Instanzen sar die Ausgabe ausgeben wird. Im folgenden Beispiel druckt sar die Ausgabe 10 Mal im Abstand von 5 Sekunden.
$ sar 5 10
Überprüfen Sie die CPU-Auslastung mit vmstat
Das vmstat-Tool meldet verschiedene Systeminformationen wie Systemprozesse, Arbeitsspeicher, Swap, CPU-Leistung und I/O.
vmstat ausführen. Es meldet die Systeminformationen des Moments, in dem es ausgeführt wurde.
$ vmstat
Ähnlich wie sar kann vmstat den Systemstatus in einem festen Intervall (in Sekunden) melden.
$ vmstat 3
Im letzten Schritt würde vmstat unendlich laufen. Um vmstat für einen festen Zeitraum auszuführen, definieren Sie die Anzahl der Durchläufe. Hier meldet vmstat den Systemstatus in 3-Sekunden-Intervallen 10 Mal.
$ vmstat 3 10
Überprüfen Sie die CPU-Auslastung mit Glances
Glances ist ein leistungsstarkes Tool zur Überwachung des Systemstatus. Es ist in Python geschrieben, das die psutil-Bibliothek zum Abrufen verschiedener Systeminformationen verwendet. Glances bietet viele detaillierte Systeminformationen wie CPU-Überwachung, Speicher, Netzwerknutzung, Festplatten-E/A, Prozesse und Dateisystemauslastung usw. Schauen Sie sich Glances auf GitHub an.
Die Installation von Glances ist eine einfache Aufgabe. Die folgende Methode funktioniert auf jeder GNU/Linux-Distribution. Alles, was Sie brauchen, ist entweder curl oder wget in Ihrem System installiert zu haben. Glances wird mit allen notwendigen Abhängigkeiten installiert.
$ curl -L https://bit.ly/Blicke | /bin/bash$ wget -O- https://bit.ly/Blicke | /bin/bash
Blicke sind auch als Snap-Paket erhältlich. Angenommen, Sie haben Snappy (Snap-Paketmanager) in Ihrem System installiert, installieren Sie Glances Snap von Snapcraft. Schauen Sie sich die Blicke bei Snapcraft an.
$ sudo snap install Blicke
Die Verwendung von Glances ist sehr einfach. Um den Standalone-Modus zu starten, führen Sie den folgenden Befehl aus.
$ Blicke
Glances bietet auch die Ausführung im Webserver-Modus an. Um den Webserver zu starten, führen Sie den folgenden Befehl aus.
$ Blicke -w
Um auf den Server zuzugreifen, rufen Sie die folgende URL auf.
$http://
Für die Ausgabe von Rohinformationen kann Glances die Ausgabe auf STDOUT drucken.
$ Blicke --stdout cpu.Benutzer, Memo.gebraucht, laden
Abschließende Gedanken
Es gibt viele Möglichkeiten, die CPU-Auslastung zu ermitteln. Während alle von ihnen gut funktionieren, müssen Sie je nach Bedarf möglicherweise bei einigen bleiben. Wenn Sie ein Systemadministrator sind, bietet das Beherrschen von top/htop und Glances die größte Flexibilität. Wenn Sie nur eine schnelle Aktualisierung des Systemressourcenverbrauchs wünschen, bieten andere Methoden eine bessere Erfahrung.
Die Überprüfung der CPU-Auslastung ist in Ordnung und nützlich. Um die Stabilität zu gewährleisten, muss jedoch überprüft werden, ob Ihr System auch unter maximaler Belastung einwandfrei funktionieren kann. Sehen Sie sich einige nützliche Linux-Apps für Stresstests und Benchmarks der CPU-Leistung an.
Viel Spaß beim Rechnen!