Website-Suche

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.