Wie erhalte ich die aktuelle Bandbreitennutzung über die Befehlszeile mit integrierten Linux-Tools?

Ich suche nach einer guten Möglichkeit, die aktuelle Gesamtbandbreitennutzung auf einem Linux-Computer abzurufen. Ich habe versucht iftop, nethogs, sie zeigen jedoch im Vergleich zum Systemmonitor keine echte Bandbreitennutzung.Sie entsprechen nicht den Anforderungen meines Projekts. Ich möchte einen Befehl, den ich ausführe, und er gibt die aktuelle Verwendung zum Hochladen und Herunterladen und sonst nichts zurück.

Ich möchte es auch mit nativen Linux-Tools tun, ohne etwas zu installieren. In der Tat mache ich eine monitoring-Anwendung, und ich möchten Sie, dass Computer überwacht werden können, ohne dass in jedem Computer, den der Benutzer überwachen möchte, etwas installiert werden muss, das wäre großartig!

Author: Giacomo1968, 2014-07-07

3 answers

Verwenden iptraf - http://www.linuxcommand.org/man_pages/iptraf8.html

Es ist ein ncurses-basiertes Befehlszeilenprogramm, mit dem Sie Statistiken zu allen Schnittstellen auf dem Computer - einschließlich der Bandbreitennutzung-erhalten.

 5
Author: Andrew,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-07-07 20:33:46

Es gibt viele Werkzeuge, die Sie verwenden können: nload, bmon, iftop, vnstat, ifstat... und wenn Sie nur einen bestimmten Teil ihrer Ausgabe erhalten möchten (z. B. Hochladen und Herunterladen), bin ich mir ziemlich sicher, dass Sie dies können grep/cut/awk die Ausgabe, damit es für Sie funktioniert.

18 befehle zur Überwachung der Netzwerkbandbreite auf dem Linux-Server

 2
Author: jimm-cl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-07-07 18:07:08

Sysstat sammelt auch Netzwerk-Stast. Wenn Sie einen "Man sar" machen, sehen Sie alle Ressourcen, für die Sie historische Daten aufbewahren können.

Richten Sie es ein, indem Sie den Befehl "/usr/lib/sa/sa1" (oder /usr/lib64/sa/sa1) in cron eingeben und jedes Mal ausführen lassen, wenn Sie einen Datenpunkt möchten (z. B. alle 5 Minuten)

Dann können Sie "sar" verwenden, um Ihre Daten anzuzeigen. Standard ist heute. Sie können auch historische Daten für bis zu 30 Tage. Sie können Ihre Daten auch archivieren, damit Sie sie für immer aufbewahren können (jeweils tagesdaten sind etwa 8 MB).

Für die Vernetzung würden Sie "sar-n"

Wunderbares Werkzeug :)

Ein Beispiel:

 testlinux:~ # sar -n DEV | head -10
 Linux 2.6.16.60-0.21-default (pCITFileSvr01)    11/07/10

 00:00:01        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
 00:05:01           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
 00:05:01         eth0      9.95      0.12      1.42      0.02      0.00      0.00      0.00
 00:10:01           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
 00:10:01         eth0     10.20      0.04      1.44      0.00      0.00      0.00      0.00
 00:15:01           lo      0.00      0.00      0.00      0.00      0.00       0.00      0.00
 00:15:01         eth0     10.32      0.12      1.50      0.02      0.00      0.00      0.00
 00:20:01           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
 testlinux:~ #
 2
Author: ben,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-07-07 18:18:59