LSOF (List Open Files) ist ein Befehlszeilentool, das hauptsächlich zur Überwachung von Systemressourcen verwendet wird, ähnlich wie bei Linux/Unix-Betriebssystemen. Über den LSOF-Befehl können Benutzer detaillierte Informationen über die aktiven Dateien im System und die Prozesse erhalten, die auf diese Dateien zugreifen. LSOF kann Benutzern helfen, die Prozesse zu identifizieren, die derzeit Dateiressourcen belegen, wodurch Systemressourcen besser verwaltet und mögliche Probleme behoben werden können. LSOF ist leistungsstark und flexibel und kann Systemadministratoren dabei helfen, dateibezogene Probleme wie Dateilecks, nicht geschlossene Dateideskriptoren usw. schnell zu lokalisieren. Per LSOF-Befehl
LSOF-Befehlszeilentool ermöglicht Systemadministratoren und Entwicklern:
In diesem Tutorial erfahren Sie, wie Sie einen Live-Port mit dem LSOF-Befehl überwachen.
Die Syntax des LSOF-Befehls lautet wie folgt:
$lsof [Optionen][Name]
Optionen des LSOF-Befehls sind Flags, mit denen die anzuzeigenden dateibezogenen Informationen angegeben werden. Zu diesen Optionen gehören normalerweise der Dateiname, die Prozess-ID, der Benutzername oder die IP-Adresse der Netzwerkdatei (IPv4, IPv6). Durch Auswahl verschiedener Optionen kann der LSOF-Befehl die geöffneten Dateien auflisten, die diesen Bezeichnern zugeordnet sind.
LSOF ist in der Regel auf vielen Linux-Systemen vorinstalliert. Wenn es auf Ihrem System nicht installiert ist, müssen Sie möglicherweise ein verfügbares Paket manuell herunterladen und installieren. Sie können die Installation von LSOF auf Ihrem System überprüfen und die installierte Version sehen, indem Sie den folgenden Befehl ausführen:
$lsof-v
Es ist wichtig zu beachten, dass Sie zum Ausführen von LSOF-Befehlen mit entsprechenden Berechtigungen möglicherweise Superuser-Berechtigungen erlangen müssen, um spezifische Informationen über den Prozess und die Netzwerkverbindungen zu erhalten, und dass Sie möglicherweise „sudo“ verwenden müssen, um dies mit Administratorrechten auszuführen .
Wenn Sie den LSOF-Befehl mit der Option „-i“ ausführen, werden Informationen zu Prozessen angezeigt, die über Netzwerkverbindungen verfügen, z. B. Listening-Sockets oder bestehende Verbindungen.
$lsof-i
Der vorherige Befehl zeigt Informationen zu Prozessname (COMMAND), Prozess-ID (PID), Benutzer (USER), Dateideskriptor (FD), Verbindungstyp (TYPE), lokalen und Remote-Adressen und Verbindungsstatus an. Sie sollten die folgende Ausgabe sehen:
Sie können die Ausgabe nach bestimmten Kriterien filtern, z. B. nach bestimmten Verbindungstypen oder Ports. Sie können beispielsweise „lsof --itcp“ verwenden, um nur Prozesse aufzulisten, die mit TCP-Verbindungen verknüpft sind.
$lsof – i tcp: 1 – 1024
Der vorherige Befehl filtert Informationen über Prozesse, die TCP-Verbindungen innerhalb des angegebenen Portbereichs 1 bis 1024 öffnen. Dies ist hilfreich, um zu ermitteln, welche Prozesse bekannte Ports verwenden, die mit öffentlichen Diensten verknüpft sind.
Mit LSOF können Sie bestimmte Ports in Echtzeit überwachen. Sie möchten beispielsweise Prozesse im Zusammenhang mit „HTTP“ auf Port 80 überwachen, der alle 3 Sekunden aktualisiert wird. Verwenden Sie dazu den folgenden Befehl, um Port 80 in Echtzeit zu überwachen:
$lsof—i:80—r3
Um alle SSHD-Verbindungen zu überwachen, die auf Port 22 laufen, führen Sie den folgenden Befehl aus:
$sudo lsof -i:22-r3
Dieser Befehl überwacht kontinuierlich und zeigt alle 3 Sekunden Echtzeitinformationen zu Netzwerkverbindungen auf Port 22 an. Dies ist besonders nützlich, um Änderungen zu verfolgen, die in Echtzeit auftreten, wie z. B. neue SSH-Verbindungen oder Verbindungsabbrüche.
Um die Informationen von Prozessen mit offenen TCP-Verbindungen im angegebenen Portbereich 1 bis 1024 in Echtzeit zu überwachen, können Sie den folgenden Befehl verwenden:
$lsof-i tcp:1-1024-r3
Mit dem LSOF-Befehl können Sie alle Netzwerkverbindungen in Echtzeit überwachen. Sie möchten beispielsweise eine kontinuierliche Überwachung durchführen und alle 5 Sekunden Echtzeitinformationen zu Netzwerkverbindungen anzeigen.
$lsof—i—r5
Die folgende Ausgabe enthält alle 5 Sekunden Echtzeitdetails des Prozesses und des zugehörigen Netzwerk-Sockets:
Ähnlich können Sie den LSOF-Befehl auch verwenden, um nur „etablierte“ Verbindungen zu überwachen:
$lsof—i—E—r10
In diesem Tutorial haben wir gelernt, wie man einen Port mit dem LSOF-Befehl in Echtzeit überwacht. Dieser Befehl kann auch Systemadministratoren und anderen Linux-Benutzern dabei helfen, Netzwerkverbindungen zu überwachen, einschließlich aller aktiven oder offenen Ports. Wir hoffen, dass dieser Leitfaden Ihnen hilft, zu verstehen, wie Sie den LSOF-Befehl mit verschiedenen Optionen verwenden und verschiedene Ports und Prozesse in Echtzeit überwachen.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie LSOF zur Überwachung von Ports in Echtzeit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!