20 unverzichtbare Befehlszeilentools zur Überwachung der Linux-Leistung
Die Aufgabe eines System- oder Netzwerkadministrators, der täglich mit der Überwachung und Fehlerbehebung von Linux-Systemleistungsproblemen betraut ist, ist eine enorm anspruchsvolle Aufgabe.
Es erfordert unerschütterlichen Einsatz, ein tiefgreifendes Verständnis von Linux-Systemen und ein ständiges Engagement für die Gewährleistung optimaler Leistung und Zuverlässigkeit.
Nachdem ich ein Jahrzehnt lang als Linux-Administrator in der IT-Branche gearbeitet habe, habe ich die mühsame Aufgabe der Überwachung und Sicherstellung des kontinuierlichen Betriebs von Systemen wirklich zu schätzen gelernt.
Vor diesem Hintergrund haben wir eine umfassende Liste der 20 am häufigsten verwendeten Befehlszeilen-Überwachungstools zusammengestellt. Diese unschätzbar wertvollen Tools können sich für jeden Linux-/Unix-Systemadministrator als unverzichtbar erweisen und es ihnen ermöglichen, den Zustand und die Leistung ihrer Systeme effizient zu überwachen, zu diagnostizieren und aufrechtzuerhalten.
Diese Überwachungstools sind unter allen Linux-Varianten verfügbar und können nützlich sein, um Leistungsprobleme zu überwachen und die tatsächlichen Ursachen zu finden. Die hier angezeigte Befehlsliste reicht aus, um den für Ihr Überwachungsszenario geeigneten Befehl auszuwählen.
1. Oben – Linux-Prozessüberwachung
Der Linux-Befehl top ist ein Leistungsüberwachungsprogramm, das häufig von vielen Systemadministratoren zur Überwachung der Linux-Leistung verwendet wird und unter vielen Linux-/Unix-ähnlichen Betriebssystemen verfügbar ist.
Mit dem Befehl top werden alle laufenden und aktiven Echtzeitprozesse in einer geordneten Liste angezeigt und regelmäßig aktualisiert. Es zeigt CPU-Nutzung, Speichernutzung, Swap-Speicher, Cache-Größe, Puffergröße an >, Prozess-PID, Benutzer, Befehle und vieles mehr.
Es zeigt auch eine hohe Speicher- und CPU-Auslastung laufender Prozesse. Der Befehl top ist für Systemadministratoren sehr nützlich, um ihn zu überwachen und bei Bedarf Korrekturmaßnahmen zu ergreifen. Sehen wir uns den oberen Befehl in Aktion an.
top
2. VmStat – Statistik des virtuellen Speichers
Der Linux-Befehl VmStat wird verwendet, um Statistiken über virtuellen Speicher, Kernel-Threads, Festplatten und Systemprozesse anzuzeigen , E/A-Blöcke, Interrupts, CPU-Aktivität und vieles mehr.
Installieren Sie VmStat unter Linux
Standardmäßig ist der Befehl vmstat unter Linux-Systemen nicht verfügbar. Sie müssen ein Paket namens sysstat (ein leistungsstarkes Überwachungstool) installieren, das ein vmstat-Programm enthält.
sudo yum install sysstat [On Older CentOS/RHEL & Fedora]
sudo dnf install sysstat [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux]
sudo apt-get install sysstat [On Debian/Ubuntu & Mint]
sudo pacman -S sysstat [On Arch Linux]
Die übliche Verwendung des vmstat-Befehlsformats ist.
vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 43008 275212 1152 561208 4 16 100 105 65 113 0 1 96 3 0
3. Lsof – Offene Dateien auflisten
Der lsof-Befehl wird in vielen Linux/Unix-ähnlichen Systemen verwendet, um eine Liste aller geöffneten Dateien und Prozesse anzuzeigen. Die enthaltenen offenen Dateien sind Festplattendateien, Netzwerk-Sockets, Pipes, Geräte und Prozesse..
Einer der Hauptgründe für die Verwendung dieses Befehls besteht darin, dass eine Festplatte nicht ausgehängt werden kann und die Fehlermeldung angezeigt wird, dass Dateien verwendet oder geöffnet werden. Mit diesem Befehl können Sie leicht erkennen, welche Dateien verwendet werden.
Das gebräuchlichste Format für den Befehl lsof ist.
lsof
COMMAND PID TID TASKCMD USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root cwd DIR 8,2 224 128 /
systemd 1 root rtd DIR 8,2 224 128 /
systemd 1 root txt REG 8,2 1567768 134930842 /usr/lib/systemd/systemd
systemd 1 root mem REG 8,2 2714928 134261052 /usr/lib64/libm-2.28.so
systemd 1 root mem REG 8,2 628592 134910905 /usr/lib64/libudev.so.1.6.11
systemd 1 root mem REG 8,2 969832 134261204 /usr/lib64/libsepol.so.1
systemd 1 root mem REG 8,2 1805368 134275205 /usr/lib64/libunistring.so.2.1.0
systemd 1 root mem REG 8,2 355456 134275293 /usr/lib64/libpcap.so.1.9.0
systemd 1 root mem REG 8,2 145984 134261219 /usr/lib64/libgpg-error.so.0.24.2
systemd 1 root mem REG 8,2 71528 134270542 /usr/lib64/libjson-c.so.4.0.0
systemd 1 root mem REG 8,2 371736 134910992 /usr/lib64/libdevmapper.so.1.02
systemd 1 root mem REG 8,2 26704 134275177 /usr/lib64/libattr.so.1.1.2448
systemd 1 root mem REG 8,2 3058736 134919279 /usr/lib64/libcrypto.so.1.1.1c
...
4. Tcpdump – Netzwerkpaketanalysator
Der Befehl tcpdump ist eines der am häufigsten verwendeten Befehlszeilenprogramme zur Netzwerkpaketanalyse oder Paketsniffer, das zum Erfassen oder Filtern von Paketen verwendet wird >TCP/IP-Pakete, die auf einer bestimmten Schnittstelle über ein Netzwerk empfangen oder übertragen werden.
Es bietet auch die Möglichkeit, erfasste Pakete zur späteren Analyse in einer Datei zu speichern. tcpdump ist fast in allen wichtigen Linux-Distributionen verfügbar.
tcpdump -i enp0s3
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on enp0s3, link-type EN10MB (Ethernet), capture size 262144 bytes
10:19:34.635893 IP tecmint.ssh > 192.168.0.124.45611: Flags [P.], seq 2840044824:2840045032, ack 4007244093
10:19:34.636289 IP 192.168.0.124.45611 > tecmint.ssh: Flags [.], ack 208, win 11768, options
10:19:34.873060 IP _gateway.57682 > tecmint.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; UNICAST
10:19:34.873104 IP tecmint > _gateway: ICMP tecmint udp port netbios-ns unreachable, length 86
10:19:34.895453 IP _gateway.48953 > tecmint.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; UNICAST
10:19:34.895501 IP tecmint > _gateway: ICMP tecmint udp port netbios-ns unreachable, length 86
10:19:34.992693 IP 142.250.4.189.https > 192.168.0.124.38874: UDP, length 45
10:19:35.010127 IP 192.168.0.124.38874 > 142.250.4.189.https: UDP, length 33
10:19:35.135578 IP _gateway.39383 > 192.168.0.124.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; UNICAST
10:19:35.135586 IP 192.168.0.124 > _gateway: ICMP 192.168.0.124 udp port netbios-ns unreachable, length 86
10:19:35.155827 IP _gateway.57429 > 192.168.0.124.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; UNICAST
10:19:35.155835 IP 192.168.0.124 > _gateway: ICMP 192.168.0.124 udp port netbios-ns unreachable, length 86
...
5. Netstat – Netzwerkstatistik
netstat ist ein Befehlszeilentool zur Überwachung von eingehenden und ausgehenden Netzwerkpaketstatistiken sowie Schnittstellenstatistiken. Es ist ein sehr nützliches Tool für jeden Systemadministrator, um die Netzwerkleistung zu überwachen und netzwerkbezogene Probleme zu beheben.
netstat -a | more
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:sunrpc 0.0.0.0:* LISTEN
tcp 0 0 tecmint:domain 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp 0 0 localhost:postgres 0.0.0.0:* LISTEN
tcp 0 0 tecmint:ssh 192.168.0.124:45611 ESTABLISHED
tcp6 0 0 [::]:sunrpc [::]:* LISTEN
tcp6 0 0 [::]:ssh [::]:* LISTEN
tcp6 0 0 localhost:postgres [::]:* LISTEN
udp 0 0 0.0.0.0:mdns 0.0.0.0:*
udp 0 0 localhost:323 0.0.0.0:*
udp 0 0 tecmint:domain 0.0.0.0:*
udp 0 0 0.0.0.0:bootps 0.0.0.0:*
udp 0 0 tecmint:bootpc _gateway:bootps ESTABLISHED
...
Obwohl Netstat heutzutage zugunsten des SS-Befehls veraltet ist, finden Sie Netstat möglicherweise immer noch in Ihrem Netzwerk-Toolkit.
6. Htop – Linux-Prozessüberwachung
htop ist ein sehr fortschrittliches interaktives und Echtzeit-Linux-Prozessüberwachungstool, das dem Linux-top-Befehl sehr ähnlich ist, aber über einige umfangreiche Funktionen wie einen Benutzer- benutzerfreundliche Oberfläche zur Verwaltung von Prozessen, Tastenkombinationen, vertikale und horizontale Ansichten der Prozesse und vieles mehr.
htop
htop ist ein Tool eines Drittanbieters, das nicht mit Linux-Systemen geliefert wird. Sie müssen es mit dem Paketmanager-Tool Ihres Systems installieren.
Weitere Informationen zur htop-Installation finden Sie in unserem Artikel – Installieren Sie Htop (Linux Process Monitoring) unter Linux.
7. Iotop – Linux-Festplatten-E/A überwachen
iotop ist auch dem top command und dem htop-Programm sehr ähnlich, verfügt jedoch über eine Buchhaltungsfunktion zur Überwachung und Anzeige in Echtzeit Festplatten-E/A und Prozesse.
Das iotop-Tool ist sehr nützlich, um den genauen Prozess und häufig verwendete Lese-/Schreibvorgänge auf der Festplatte der Prozesse zu finden.
Installieren Sie Iotop unter Linux
Standardmäßig ist der Befehl iotop unter Linux nicht verfügbar und Sie müssen ihn wie gezeigt installieren.
sudo yum install iotop [On Older CentOS/RHEL & Fedora]
sudo dnf install iotop [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux]
sudo apt-get install iotop [On Debian/Ubuntu & Mint]
sudo pacman -S iotop [On Arch Linux]
Die übliche Verwendung des iotop-Befehlsformats ist.
iotop
8. Iostat – Eingabe-/Ausgabestatistik
iostat ist ein einfaches Tool, das System-Eingabe- und Ausgabe-Statistiken zu Speichergeräten sammelt und anzeigt. Dieses Tool wird häufig verwendet, um Leistungsprobleme bei Speichergeräten zu verfolgen, darunter Geräte, lokale Festplatten und Remote-Festplatten wie NFS >.
Installieren Sie Iostat unter Linux
Um den Befehl iostat zu erhalten, müssen Sie wie gezeigt ein Paket namens sysstat installieren.
sudo yum install sysstat [On Older CentOS/RHEL & Fedora]
sudo dnf install sysstat [On CentOS/RHEL/Fedora/Rocky Linux & AlmaLinux]
sudo apt-get install sysstat [On Debian/Ubuntu & Mint]
sudo pacman -S sysstat [On Arch Linux]
Die übliche Verwendung des iostat-Befehlsformats ist.
iostat
Linux 4.18.0-193.el8.x86_64 (tecmint) 04/05/2021 _x86_64_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.21 0.03 0.59 2.50 0.00 96.67
Device tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 3.95 83.35 89.63 1782431 1916653
9. IPTraf – Echtzeit-IP-LAN-Überwachung
IPTraf ist ein Open-Source-Konsolen-basiertes Dienstprogramm zur Echtzeit-Netzwerküberwachung (IP LAN) für Linux. Es sammelt eine Vielzahl von Informationen wie den IP-Verkehrsmonitor, der über das Netzwerk geleitet wird, einschließlich TCP-Flag-Informationen, ICMP-Details, TCP/UDP-Verkehrsausfälle, TCP-Verbindungspakete und Bytezahlen.
Außerdem werden Informationen zu allgemeinen und detaillierten Schnittstellenstatistiken zu TCP, UDP, IP, ICMP, Nicht-IP, IP-Prüfsummenfehlern, Schnittstellenaktivität usw. gesammelt.
10. Psacct oder Acct – Benutzeraktivität überwachen
psacct- oder acct-Tools sind sehr nützlich, um die Aktivität jedes Benutzers auf dem System zu überwachen. Beide Daemons laufen im Hintergrund und überwachen die Gesamtaktivität jedes Benutzers im System sowie die von ihm verbrauchten Ressourcen genau.
Diese Tools sind für Systemadministratoren sehr nützlich, um die Aktivitäten jedes Benutzers zu verfolgen, z. B. was er tut, welche Befehle er ausgegeben hat, wie viele Ressourcen er verwendet, wie lange er im System aktiv ist usw.
11. Monit – Überwachung von Linux-Prozessen und -Diensten
Monit ist ein kostenloses Open-Source- und webbasiertes Prozessüberwachungsprogramm, das Systemprozesse, Programme, Dateien, Verzeichnisse, Berechtigungen, Prüfsummen und Dateisysteme automatisch überwacht und verwaltet.
Es überwacht Dienste wie Apache, MySQL, Mail, FTP, ProFTP, Nginx, SSH und so weiter. Der Systemstatus kann über die Befehlszeile oder über die eigene Weboberfläche angezeigt werden.
Informationen zur Installation und Konfiguration finden Sie in unserem Artikel „So installieren und richten Sie das Monit-Programm (Linux Process and Services Monitoring)“ ein.
12. NetHogs – Überwachung der Netzwerkbandbreite pro Prozess
NetHogs ist ein nettes kleines Open-Source-Programm (ähnlich dem Linux-top-Befehl), das die Netzwerkaktivität jedes Prozesses auf Ihrem System im Auge behält. Es verfolgt außerdem in Echtzeit die Bandbreite des Netzwerkverkehrs, die von jedem Programm oder jeder Anwendung genutzt wird.
nethogs
Informationen zur Installation und Verwendung finden Sie in unserem Artikel: Überwachen Sie die Linux-Netzwerkbandbreite mit NetHogs
13. iftop – Überwachung der Netzwerkbandbreite
iftop ist ein weiteres terminalbasiertes kostenloses Open-Source-Systemüberwachungsdienstprogramm, das eine regelmäßig aktualisierte Liste der Netzwerkbandbreitennutzung (Quell- und Zielhosts) anzeigt, die über die Netzwerkschnittstelle Ihres Systems übertragen wird.
iftop ist im Kontext der Netzwerknutzung analog zu „top“, ähnlich wie „top“ Einblicke in die CPU-Auslastung bietet.
iftop gehört zur angesehenen „Top“-Familie der Netzwerküberwachungstools. Es wurde speziell für die Beobachtung einer vom Benutzer ausgewählten Netzwerkschnittstelle entwickelt und liefert Echtzeitdaten zur aktuellen Bandbreitennutzung zwischen zwei angegebenen Hosts.
iftop
Informationen zur Installation und Verwendung finden Sie in unserem Artikel: iftop – Monitor Network Bandwidth Utilization
14. Monitorix – System- und Netzwerküberwachung
Monitorix ist ein kostenloses, leichtes Dienstprogramm, das darauf ausgelegt ist, möglichst viele System- und Netzwerkressourcen auf Linux/Unix-Servern auszuführen und zu überwachen.
Es verfügt über einen integrierten HTTP-Webserver, der regelmäßig System- und Netzwerkinformationen sammelt und diese in Diagrammen anzeigt. Es überwacht den Durchschnitt und die Auslastung des Systems, die Speicherzuordnung, den Zustand des Festplattentreibers, die Systemdienste und das Netzwerk Ports, Mail-Statistiken (Sendmail, Postfix, Dovecot usw.), MySQL Statistiken und vieles mehr.
Es dient zur Überwachung der Gesamtsystemleistung und hilft bei der Erkennung von Ausfällen, Engpässen, abnormalen Aktivitäten usw.
Informationen zur Installation und Verwendung finden Sie in unserem Artikel: Monitorix, ein System- und Netzwerküberwachungstool für Linux
15. Arpwatch – Ethernet-Aktivitätsmonitor
Arpwatch ist eine Art Programm, das die Adressauflösung (Änderungen von MAC- und IP-Adressen) von Ethernet überwachen soll. Netzwerkverkehr in einem Linux-Netzwerk.
Es überwacht kontinuierlich den Ethernet-Verkehr und erstellt ein Protokoll der Änderungen an IP- und MAC-Adresspaaren sowie einen Zeitstempel im Netzwerk. Es verfügt außerdem über eine Funktion zum Senden von E-Mail-Benachrichtigungen an Administratoren, wenn eine Kopplung hinzugefügt oder geändert wird. Es ist sehr nützlich, um ARP-Spoofing in einem Netzwerk zu erkennen.
Informationen zur Installation und Verwendung finden Sie in unserem Artikel: Arpwatch zur Überwachung der Ethernet-Aktivität
16. Suricata – Netzwerksicherheitsüberwachung
Suricata ist ein leistungsstarkes Open-Source-System für Netzwerksicherheit sowie Intrusion Detection und Prevention Monitoring System für Linux, FreeBSD und Windows.
Es wurde von der gemeinnützigen Stiftung OISF (Open Information Security Foundation) entworfen und ist deren Eigentümer.
Informationen zur Installation und Verwendung finden Sie in unserem Artikel: Suricata – Ein System zur Erkennung und Verhinderung von Netzwerkeinbrüchen
17. VnStat PHP – Überwachung der Netzwerkbandbreite
VnStat PHP ist eine webbasierte Frontend-Anwendung für das beliebteste Netzwerktool namens „vnstat“. VnStat PHP überwacht die Nutzung des Netzwerkverkehrs in einem ansprechend grafischen Modus.
Es zeigt die gesamte Nutzung des IN- und OUT-Netzwerkverkehrs in stündlicher, täglicher, monatlicher Form an. starke> und vollständige Zusammenfassung-Berichte.
Informationen zur Installation und Verwendung finden Sie in unserem Artikel: Überwachung der Netzwerkbandbreitennutzung
18. Nagios – Netzwerk-/Serverüberwachung
Nagios ist ein führendes, leistungsstarkes Open-Source-Überwachungssystem, das es Netzwerk-/Systemadministratoren ermöglicht, serverbezogene Probleme zu erkennen und zu lösen, bevor sie sich auf wichtige Geschäftsprozesse auswirken.
Mit dem Nagios-System können Administratoren Remote-Linux, Windows, Switches, Router und Drucker in einem einzigen Fenster überwachen. Es zeigt kritische Warnungen an und zeigt an, ob in Ihrem Netzwerk/Server ein Fehler aufgetreten ist, was Ihnen indirekt dabei hilft, Behebungsprozesse einzuleiten, bevor sie auftreten.
Informationen zur Installation, Konfiguration und Verwendung finden Sie in unserem Artikel „Installieren Sie das Nagios-Überwachungssystem zur Überwachung entfernter Linux-/Windows-Hosts“.
19. Nmon: Überwachen Sie die Linux-Leistung
Nmon (steht für Nigel’s Performance Monitor) ist ein Tool, das zur Überwachung aller Linux-Ressourcen wie CPU, Speicher, Festplattennutzung, Netzwerk, Top-Prozesse, NFS, Kernel und vieles mehr verwendet wird. Dieses Tool gibt es in zwei Modi: Online-Modus und Aufnahmemodus.
Der Online-Modus dient der Echtzeitüberwachung und der Capture-Modus dient zum Speichern der Ausgabe im CSV-Format zur späteren Verarbeitung.
Informationen zur Installation und Verwendung finden Sie in unserem Artikel: Nmon (Performance Monitoring) Tool unter Linux installieren
20. Collectl: All-in-One-Tool zur Leistungsüberwachung
Collectl ist ein weiteres leistungsstarkes und funktionsreiches befehlszeilenbasiertes Dienstprogramm, mit dem Informationen über Linux-Systemressourcen wie CPU-Auslastung, Speicher, Netzwerk, Inodes, Prozesse, NFS, TCP gesammelt werden können , Steckdosen und vieles mehr.
Informationen zur Installation und Verwendung finden Sie in unserem Artikel: Installieren Sie das Collectl-Tool (All-in-One Performance Monitoring) unter Linux
Wir würden gerne wissen, welche Art von Überwachungsprogrammen Sie verwenden, um die Leistung Ihrer Linux-Server zu überwachen. Wenn wir ein wichtiges Tool vermissen, das wir Ihrer Meinung nach in diese Liste aufnehmen möchten, informieren Sie uns bitte über Kommentare und vergessen Sie bitte nicht, es mit uns zu teilen.