# lsof – Übersicht und erweitertes Anwendungsspektrum
Der lsof-Befehl (list open files) ist ein zentrales Werkzeug zur Identifikation von geöffneten Dateien, Prozessen und Netzwerkverbindungen unter Linux. Er unterstützt Systemüberwachung, Fehlerdiagnose und Sicherheitsanalysen und bietet detaillierte Filteroptionen.
## Grundlegende Funktionalität
lsof zeigt alle von Prozessen geöffneten Dateitypen an – reguläre Dateien, Verzeichnisse, Bibliotheken, Sockets und Geräte. Die flexible Filterung ermöglicht, spezifische Informationen herauszufiltern und gezielt Systeme zu analysieren.
## Wesentliche Parameter
- **-p PID**
Listet alle Dateien eines bestimmten Prozesses auf.
Beispiel:
```bash
lsof -p 1234Ausgabe zeigt alle Dateizugriffe des Prozesses mit der PID 1234.
-
-u USER
Filtert die Ausgabe auf Prozesse, die einem bestimmten Benutzer gehören.
Beispiel:lsof -u userZeigt alle Dateien, die von Prozessen des Benutzers “user” geöffnet wurden.
-
-i
Zeigt alle aktiven Internet- und Netzwerkverbindungen an.
Beispiel:lsof -i -
Weitere Filteroptionen:
- -a: Kombiniert mehrere Filterkriterien logisch.
- -d: Beschränkt die Ausgabe auf konkrete Dateideskriptoren (z. B.
txtfür Textdateien).
Beispiel:
lsof -a -p 1234 -d txt
Typische Einsatzszenarien
1. Auflisten aller offenen Dateien eines Prozesses
Befehl zur Anzeige aller von Prozess 1234 verwendeten Dateien:
lsof -p 1234Beispielhafte Ausgabe:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 1234 user cwd DIR 202,1 4096 2 /home/user
bash 1234 user txt REG 202,1 103752 13 /bin/bash
bash 1234 user mem REG 202,1 203456 14 /lib/x86_64-linux-gnu/libc.so.6
2. Überprüfen eines bestimmten Ports
Finde heraus, welcher Prozess Port 80 verwendet:
lsof -i :80Beispielhafte Ausgabe:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
apache2 2521 root 4u IPv4 23456 0t0 TCP *:http (LISTEN)
apache2 2522 www-data 4u IPv4 23456 0t0 TCP *:http (LISTEN)
3. Filtern nach Benutzer
Sehen Sie sich alle offenen Dateien des Benutzers “user” an:
lsof -u userDieser Filter ist besonders nützlich, um Benutzer-spezifische Aktivitäten und Ressourcennutzung zu überwachen.
4. Auflisten aller Netzwerkverbindungen
Ermöglicht einen Überblick über alle aktiven Internetverbindungen:
lsof -iBeispielhafte Ausgabe:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1023 root 3u IPv4 34567 0t0 TCP *:ssh (LISTEN)
chrome 2045 user 55u IPv4 45678 0t0 TCP 192.168.1.5:40234->93.184.216.34:http (ESTABLISHED)
Erweiterte Nutzungsmöglichkeiten
- Kombination mehrerer Filter mit dem Parameter -a zur präzisen Diagnose.
- Einsatz von -d zur gezielten Analyse eines bestimmten Dateityps.
- Integration in Skripte zur kontinuierlichen Systemüberwachung.
Tags:lsofLinuxTerminalBefehleSystemdiagnose
[[Linux-Blog-Overview]]