20 Command Line Tools fir Linux Performance ze iwwerwaachen


Et ass wierklech eng ganz haart Aarbecht fir all System oder Netzwierk Administrateur fir all Dag Linux System Performance Probleemer ze iwwerwaachen an ze debuggen.

Nodeem ech e Linux Administrator fir 10 Joer an der IT Industrie war, sinn ech gewuer ginn, wéi schwéier et ass fir Systemer ze iwwerwaachen an ze lafen.

Aus dësem Grond hu mir d'Lëscht vun Top 20 dacks benotzte Kommandozeil-Iwwerwaachungs-Tools zesummegesat, déi fir all Linux/Unix System Administrateur nëtzlech kënne sinn.

[Dir kënnt och gären hunn: 16 Nëtzlech Bandbreedungs-Iwwerwaachungsinstrumenter fir d'Netzwierkverbrauch am Linux ze analyséieren]

Dës Befehle sinn ënner all Aroma vu Linux verfügbar a kënne nëtzlech sinn fir d'tatsächlech Ursaache vu Performanceproblemer ze iwwerwaachen an ze fannen. Dës Lëscht vun de Kommandoen hei gewisen ass ganz genuch fir Iech deen ze wielen deen gëeegent ass fir Ären Iwwerwaachungsszenario.

Linux Top Kommando ass e Performance Iwwerwaachungsprogramm deen dacks vu ville Systemadministrateuren benotzt gëtt fir d'Linux Leeschtung ze iwwerwaachen an et ass verfügbar ënner ville Linux/Unix-ähnlechen Betribssystemer.

Den Top Kommando gëtt benotzt fir all déi lafend an aktiv Echtzäitprozesser an enger bestallter Lëscht ze weisen an se regelméisseg ze aktualiséieren. Et weist CPU Benotzung, Erënnerungsverbrauch, Swap Memory, Cache Gréisst, Buffergréisst, Prozess PID, Benotzer, Kommandoen, a vill méi.

Et weist och héich Erënnerung a CPU Notzung vu lafende Prozesser. Den Top Kommando ass vill nëtzlech fir Systemadministrateuren fir Korrekturaktioun ze iwwerwaachen an ze huelen wann néideg. Loosst eis den Top Kommando an Aktioun gesinn.

# top

Fir méi Beispiller vum Top Kommando liesen: 12 TOP Kommando Beispiller am Linux

Linux VmStat Kommando gëtt benotzt fir Statistike vu virtueller Erënnerung, Kernel thread, Disken, Systemprozesser, I/O Blocks, Ënnerbriechungen, CPU Aktivitéit a vill méi ze weisen.

Par défaut ass de vmstat Kommando net verfügbar ënner Linux Systemer, Dir musst e Package mam Numm sysstat installéieren (e mächtegt Iwwerwaachungsinstrument) deen e 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]

Déi allgemeng Notzung vum vmstat Kommandoformat ass.

# 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

Fir méi Benotzung a Beispiller, liest: 6 Vmstat Command Beispiller am Linux

De Kommando lsof gëtt a ville Linux/Unix-ähnleche Systemer benotzt fir eng Lëscht vun all oppene Dateien an de Prozesser ze weisen. Déi oppe Dateien abegraff sinn Diskdateien, Netzwierksockets, Päifen, Apparater a Prozesser.

Ee vun den Haaptgrënn fir dëse Kommando ze benotzen ass wann eng Disk net demontéiert ka ginn an de Feeler weist datt Dateie benotzt oder opgemaach ginn. Mat dësem Kommando kënnt Dir einfach identifizéieren wéi eng Dateien am Gebrauch sinn.

De stäerkste gemeinsam Format fir lsof Kommando ass.

# 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
...

Fir méi Benotzung an Beispiller, liest: 10 lsof Kommando Beispiller am Linux

Den tcpdump Kommando ass ee vun de meescht benotzte Kommandozeilen Netzwierk Paket Analysator oder Pakete Sniffer Programmer déi benotzt gëtt fir TCP/IP Pakete z'erfaassen oder ze filteren, déi op engem spezifeschen Interface iwwer e Netzwierk kritt oder transferéiert ginn.

Et bitt och eng Optioun fir ageholl Packagen an enger Datei ze späicheren fir spéider Analyse. tcpdump ass bal an all gréisser Linux Verdeelungen 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
...

Fir méi Benotzung a Beispiller, liest: 12 Tcpdump Kommando Beispiller am Linux

Den netstat ass e Kommandozeil-Tool fir d'Iwwerwaachung vun erakommen an erausginn Netzwierkpakete Statistiken souwéi Interface Statistiken. Et ass e ganz nëtzlecht Tool fir all Systemadministrator fir d'Netzwierkleistung ze iwwerwaachen an d'Netz-relatéiert Problemer ze léisen.

# 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
...

Fir méi Notzung an Beispiller, liest - 20 Netstat Command Beispiller am Linux.

Wärend am haitegen Netstat zugonschte vum ss Kommando ofgeschaaft gouf, kënnt Dir nach ëmmer netstat an Ärem Netzwierk Toolkit entdecken.

htop ass e vill fortgeschratt interaktiven an Echtzäit Linux Prozess Iwwerwachungsinstrument, wat vill ähnlech wéi Linux Top Kommando ass, awer et huet e puer räich Features wéi eng userfrëndlech Interface fir Prozesser ze managen, Ofkiirzungsschlësselen, vertikal an horizontal Vue vun de Prozesser, a vill méi.

# htop

htop ass en Drëtt-Partei-Tool, dat net mat Linux Systemer kënnt, Dir musst et mat Ärem System Package Manager Tool installéieren. Fir méi Informatioun iwwer htop Installatioun liest eisen Artikel - Install Htop (Linux Process Monitoring) a Linux.

iotop ass och vill ähnlech wéi Top Kommando an htop Programm, awer et huet eng Comptabilitéitsfunktioun fir Echtzäit Disk I/O a Prozesser ze iwwerwaachen an ze weisen.

iotop Tool ass vill nëtzlech fir de genaue Prozess ze fannen an héich benotzte Disk Lies/Schreift vun de Prozesser.

Par défaut ass de iotop Kommando net ënner Linux verfügbar an Dir musst et installéieren wéi gewisen.

$ 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]

Déi allgemeng Notzung vum iotop Kommandoformat ass.

# iotop

Fir méi Benotzung a Beispiller, liest - Iotop - Monitor Linux Disk I/O Aktivitéit a Verbrauch pro Prozess Basis.

iostat ass en einfacht Tool dat System Input an Output Späicherapparat Statistike sammelt a weist. Dëst Tool gëtt dacks benotzt fir d'Leeschtungsprobleemer vun der Späicherapparat ze verfolgen, dorënner Geräter, lokal Disken, Remote Disks wéi NFS.

Fir den iostat Kommando ze kréien, musst Dir e Package mam Numm sysstat installéieren wéi se gewisen.

$ 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]

Déi allgemeng Notzung vum iostat Kommandoformat ass.

# 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

Fir méi Notzung an Beispiller, liesen - 6 Iostat Kommando Beispiller am Linux.

IPTraf ass en Open-Source Konsol-baséiert Echtzäit Netzwierk (IP LAN) Iwwerwachungsdéngscht fir Linux. Et sammelt eng Vielfalt vun Informatioun wéi IP Traffic Monitor, déi iwwer d'Netzwierk passéiert, dorënner TCP Fändelinformatioun, ICMP Detailer, TCP/UDP Traffic Decompte, TCP Verbindungspaket, a Byte zielt.

Et sammelt och Informatioun iwwer allgemeng an detailléiert Interface Statistike vun TCP, UDP, IP, ICMP, Net-IP, IP Checksum Feeler, Interface Aktivitéit, etc.

Fir méi Informatiounen iwwer Installatioun an Notzung, liesen - Echtzäit Interaktiven IP LAN Iwwerwachung mat IPTraf Tool.

psacct oder acct Tools si ganz nëtzlech fir d'Aktivitéit vun all Benotzer um System ze iwwerwaachen. Béid Daemone lafen am Hannergrond a behalen eng nohalteg Iwwerwaachung vun der Gesamtaktivitéit vun all Benotzer um System an och wéi eng Ressourcen vun hinnen verbraucht ginn.

Dës Tools si ganz nëtzlech fir Systemadministratoren fir d'Aktivitéit vun all Benotzer ze verfolgen wéi wat se maachen, wéi eng Befehle si erausginn, wéi vill Ressourcen vun hinnen benotzt ginn, wéi laang se am System aktiv sinn etc.

Fir d'Installatioun an d'Beispill vun de Kommandoe liest den Artikel iwwer Monitor User Aktivitéit mat psacct oder acct

Monit ass e gratis Open Source a Web-baséiert Prozess Iwwerwaachungs Utility deen automatesch Systemprozesser, Programmer, Dateien, Verzeichnisser, Permissiounen, Kontrollsummen a Dateiesystemer iwwerwaacht a verwaltet.

Et iwwerwaacht Servicer wéi Apache, MySQL, Mail, FTP, ProFTP, Nginx, SSH, a sou weider. De Systemstatus kann aus der Kommandozeil gekuckt ginn oder mat senger eegener Webinterface.

Fir d'Installatioun an d'Konfiguratioun, liest eisen Artikel - Wéi installéiere a setzt de Monit (Linux Prozess a Servicer Iwwerwachung) Programm.

NetHogs ass en Open-Source flott klenge Programm (ähnlech wéi Linux Top Kommando) deen e Tab op all Prozess Netzwierk Aktivitéit op Ärem System hält. Et hält och eng Streck vun Echtzäit Netzverkéier Bandbreedung vun all Programm oder Applikatioun benotzt.

# nethogs

Fir Installatioun an Notzung, liest eisen Artikel: Monitor Linux Network Bandwidth Using NetHogs

iftop ass eng aner terminal-baséiert gratis Open Source System Iwwerwachung Utility déi eng dacks aktualiséiert Lëscht vun der Netzbandbreedungsverbrauch (Quell- an Destinatiounshost) weist, déi duerch d'Netzwierkinterface op Ärem System passéieren.

iftop gëtt fir d'Netzwierkverbrauch ugesinn, wat 'Top' fir d'CPU Benotzung mécht. iftop ass en 'Top'Familljeinstrument dat e gewielten Interface iwwerwaacht an eng aktuell Bandbreedung tëscht zwee Hosten weist.

# iftop

Fir Installatioun an Notzung, liest eisen Artikel: iftop - Monitor Network Bandwidth Utilization

Monitorix ass e gratis Liichtgewiicht Utility dat entwéckelt ass fir System- an Netzwierkressourcen esou vill wéi méiglech op Linux/Unix Serveren ze lafen an ze iwwerwaachen.

Et huet en agebaute HTTP-Webserver dee regelméisseg System- an Netzwierkinformatioun sammelt a se a Grafike weist. Et iwwerwaacht Netzwierkporten, Mailstatistiken (Sendmail, Postfix, Dovecot, etc), MySQL Statistiken, a vill méi.

Et ass entwéckelt fir d'Gesamtsystemleistung ze iwwerwaachen an hëlleft bei der Entdeckung vu Feeler, Flaschenhals, anormal Aktivitéiten, asw.

Fir d'Installatioun an d'Benotzung, liest eisen Artikel: Monitorix e System an Network Monitoring Tool fir Linux

Arpwatch ass eng Zort Programm deen entwéckelt ass fir d'Adress Resolutioun vun (MAC an IP Adress Ännerungen) vum Ethernet Netzwierk Traffic op engem Linux Netzwierk ze iwwerwaachen.

Et hält kontinuéierlech Iwwerwaachung vum Ethernet Traffic a produzéiert e Log vun IP- a MAC Adresspaar Ännerungen zesumme mat engem Zäitstempel op engem Netzwierk. Et huet och eng Fonktioun fir E-Mail Alarmer un Administrateuren ze schécken, wann eng Pairung bäigefüügt oder ännert. Et ass ganz nëtzlech fir ARP Spoofing op engem Netzwierk z'entdecken.

Fir Installatioun an Notzung, liest eisen Artikel: Arpwatch fir Ethernet Aktivitéit ze iwwerwaachen

Suricata ass en High-Performance Open-Source Network Security an Intrusion Detection and Prevention Monitoring System fir Linux, FreeBSD, a Windows.

Et gouf entworf a Besëtz vun enger Net-Gewënn Stëftung OISF (Open Information Security Foundation).

Fir Installatioun an Notzung, liest eisen Artikel: Suricata - A Network Intrusion Detection and Prevention System

VnStat PHP ass eng webbaséiert Frontend Applikatioun fir dat populärste Netzwierkinstrument genannt vnstat. VnStat PHP iwwerwaacht d'Netzverkéierverbrauch am schéine grafesche Modus.

Et weist eng total IN an OUT Netzverkéierverbrauch a Stonn, deeglech, monatlecht a voll Zesummefaassungsberichter.

Fir d'Installatioun an d'Benotzung, liest eisen Artikel: Iwwerwaachung vun der Netzwierkbandbreedung

Nagios ass e féierende Open Source mächtege Iwwerwaachungssystem deen Netzwierk-/Systemadministratoren erlaabt Server-relatéiert Probleemer z'identifizéieren an ze léisen ier se grouss Geschäftsprozesser beaflossen.

Mam Nagios System kënnen d'Administrateuren fäeg sinn Remote Linux, Windows, Switches, Routers a Printers op enger eenzeger Fënster ze iwwerwaachen. Et weist kritesch Warnungen a weist ob eppes an Ärem Netz/Server falsch gaang ass, wat Iech indirekt hëlleft Sanéierungsprozesser unzefänken ier se optrieden.

Fir Installatioun, Konfiguratioun an Notzung, liest eisen Artikel - Install Nagios Monitoring System fir Remote Linux/Windows Hosts ze iwwerwaachen

19. Nmon: Monitor Linux Leeschtung

Nmon (steet fir Nigel's Performance Monitor) Tool, dat benotzt gëtt fir all Linux Ressourcen wéi CPU, Memory, Disk Usage, Network, Top Prozesser, NFS, Kernel, a vill méi ze iwwerwaachen. Dëst Tool kënnt an zwee Modi: Online Modus a Capture Modus.

Den Online Modus gëtt fir Echtzäit Iwwerwaachung benotzt an de Capture Modus gëtt benotzt fir d'Ausgab am CSV Format ze späicheren fir spéider Veraarbechtung.

Fir Installatioun an Notzung, liest eisen Artikel: Install Nmon (Performance Monitoring) Tool a Linux

20. Collectl: All-zu-One Performance Monitoring Tool

Collectl ass nach eng aner mächteg a Feature-räich Kommandozeil-baséiert Utility, déi benotzt ka ginn fir Informatioun iwwer Linux Systemressourcen ze sammelen wéi CPU Benotzung, Erënnerung, Netzwierk, Inoden, Prozesser, nfs, TCP, Sockets, a vill méi.

Fir Installatioun an Notzung, liest eisen Artikel: Install Collectl (All-in-One Performance Monitoring) Tool a Linux

Mir wëllen wësse wéi eng Zort Iwwerwaachungsprogrammer Dir benotzt fir d'Performance vun Äre Linux Serveren ze iwwerwaachen? Wa mir e wichtegt Tool verpasst hunn, dat Dir gär hätt, datt mir an dëser Lëscht enthalen, informéiert eis w.e.g. iwwer Kommentaren, a vergiesst w.e.g. net ze deelen.

[ Dir kënnt och gär hunn: 13 Linux Performance Monitoring Tools - Part 2 ]