Heim > Artikel > System-Tutorial > So überwachen Sie die Netzwerknutzung von Prozessen unter Linux
Bei Computern ist der Zugang zum Internet unbedingt erforderlich. Möglicherweise möchten Sie jedoch wissen, welche Linux-Prozesse auf Ihrem Computer die Verbindungen am häufigsten nutzen. Glücklicherweise ist die Überwachung von Prozessen, die Bandbreite nutzen, mithilfe einiger gängiger Linux-Tools sehr einfach. Im Folgenden finden Sie eine Einführung in mehrere Tools:
nethogs ist ein Programm ähnlich wie htop oder top, das die CPU- und Speicherauslastung in Bezug auf die Internetverbindung bereitstellt. Es bietet einen schnellen Überblick darüber, welche Prozesse eine Netzwerkverbindung verwenden.
Nethogs ist ähnlich wie top, htop oder atop ein Vollbildprogramm, das alle paar Sekunden aktualisiert wird, um die durch den aktuellen Prozess hergestellten Netzwerkverbindungen anzuzeigen.
Sie können Nethogs ganz einfach über Ihren Paketmanager installieren.
Zum Beispiel unter Debian und Ubuntu:
linuxmi@linuxmi ~/www.linuxmi.com % sudo apt install nethogs
Auf Arch Linux:
sudo pacman -S nethogs
Zur Red Hat-Serie:
sudo dnf install nethogs
Um Nethogs auszuführen, müssen Sie als Root ausgeführt werden:
linuxmi@linuxmi ~/www.linuxmi.com % sudo nethogs
Mit dem folgenden Befehl können Sie es so einrichten, dass Nethogs als normaler Benutzer ausgeführt wird:
sudo setcap "cap_net_admin,cap_net_raw+pe" /path/to/nethogs
Sie sollten „/path/to/nethogs“ durch den absoluten Pfadnamen von nethogs ersetzen. Sie finden es mit dem folgenden Befehl:
which nethogs
Verwandt:
Während lsof ein Dienstprogramm zum Auflisten offener Dateien ist, kann es auch offene Netzwerkverbindungen auflisten. Die Option -i listet Internetverbindungen auf, die mit Prozessen verbunden sind, die auf dem System ausgeführt werden. Schließlich ist unter Linux alles eine Datei.
Um Ihre aktuelle Internetverbindung anzuzeigen, verwenden Sie den folgenden Befehl:
linuxmi@linuxmi ~/www.linuxmi.com % lsof -i
lsof zeigt den Namen, die PID, den Dateideskriptor, den Internetverbindungstyp, die Größe, das Protokoll und den offiziellen Dateinamen der Verbindung für jeden Befehl an, der über eine offene Internetverbindung verfügt.
Mit den Optionen -i4 und -i6 können Sie Verbindungen über IPv4 oder IPv6 anzeigen.
Höchstwahrscheinlich haben Sie lsof bereits installiert. Wenn Sie es nicht installiert haben, können Sie es problemlos auf den wichtigsten Linux-Distributionen installieren.
Geben Sie unter Debian und Ubuntu Folgendes ein:
sudo apt install lsof
Und auf Arch:
sudo pacman -S lsof
Zu den Distributionen der Red Hat-Serie:
sudo dnf install lsof
netstat ist ein leistungsstarkes Programm, mit dem Sie Netzwerkverbindungen auf Ihrem System anzeigen können. Es wird jedoch nicht angezeigt, mit welchen Prozessen die Netzwerkverbindung verbunden ist. Wie bei lsof können Sie Befehlszeilenoptionen verwenden, um diese Informationen anzuzeigen.
netstat ist Teil des Net-Tools-Pakets. Sie können es auf den meisten Linux-Distributionen mit dem Standardpaketmanager installieren.
Zum Beispiel auf Debian oder Ubuntu:
sudo apt install net-tools
Auf Arch Linux:
sudo pacman -S net-tools
Um netstat auf Fedora, CentOS und RHEL zu installieren, führen Sie Folgendes aus:
sudo dnf install net-tools
Sie können netstat in der Befehlszeile ausführen. Standardmäßig werden das Protokoll, die Adresse und der Status der Verbindung angezeigt, aber die Option -p fügt eine Spalte mit der Prozess-ID und dem Befehlsnamen hinzu.
linuxmi@linuxmi ~/www.linuxmi.com % netstat -p
Wenn Sie netstat ausführen, werden lediglich alle Netzwerkverbindungen aufgelistet und dann beendet. Mit der Option -c können Sie eine ständig aktualisierte Liste der Verbindungen anzeigen:
linuxmi@linuxmi ~/www.linuxmi.com % netstat -pc
这与使用像 nethogs 这样的面向屏幕的程序类似,但以这种方式进行的优点是您可以将输出管道传输到另一个程序,如 grep 或分页程序,以便检查它:
linuxmi@linuxmi ~/www.linuxmi.com % netstat -p | grep 'systemd'
要查看系统上具有网络连接的所有进程,您可能需要以 root 身份运行 netstat:
linuxmi@linuxmi ~/www.linuxmi.com % sudo netstat
相关:Linux 下 12 个监视网络连接的 ss 命令示例 https://www.linuxmi.com/linux-ss-command.html
与许多现代操作系统一样,Linux 与互联网紧密连接。有时候很难追踪哪些进程在使用您的带宽。通过使用 nethogs、lsof 和 netstat 等工具,您可以找到具有打开连接的进程。
有时进程会失控,即使有连接。在 Linux 上,您可以轻松终止任何恶意进程。
Das obige ist der detaillierte Inhalt vonSo überwachen Sie die Netzwerknutzung von Prozessen unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!