Voici 41 exemples montrant diverses utilisations de la commande Linux lsof :
Utilisation de base :
1. `lsof` :répertorie tous les fichiers ouverts sur le système, y compris leur ID de processus (PID), le descripteur de fichier, le chemin du fichier et d'autres détails.
2. `lsof ` :répertorie tous les fichiers ouverts par un processus spécifique avec le PID donné.
Liste des informations spécifiques au fichier :
3. `lsof -a ` :répertorie tous les processus accédant au fichier spécifié.
4. `lsof -p -a ` :Vérifie si un fichier particulier est ouvert par un processus spécifique.
5. `lsof -c ` :répertorie tous les fichiers ouverts pour les processus portant le nom donné.
Filtrer la sortie :
6. `lsof -w ` :répertorie uniquement les processus avec des fichiers ouverts qui correspondent au modèle spécifié.
7. `lsof -F ` :filtre la sortie en fonction du type de descripteur de fichier (par exemple, f pour les fichiers normaux, d pour les répertoires, p pour les tuyaux).
8. `lsof -i :` :filtre les processus qui écoutent sur une adresse IP et un port particuliers.
9. `lsof -s ` :filtre les processus en fonction de leur état actuel (par exemple, R pour en cours d'exécution, S pour en veille).
Tri et limitation des sorties :
10. `lsof -g
` :regroupe les fichiers ouverts par taille de fichier ou ID de processus, en fonction du groupe spécifié.
11. `lsof -l ` :limite la sortie au nombre de lignes spécifié.
12. `lsof -L ` :trie la sortie selon une colonne spécifique (par exemple, PID, COMMAND, SIZE, FD, MODE, TYPE).
Options spéciales :
13. `lsof -h` :affiche le menu d'aide avec des informations détaillées sur toutes les options disponibles.
14. `lsof -n ` :ne résout pas les adresses numériques ou les numéros de port.
15. `lsof -R` :répertorie de manière récursive tous les fichiers ouverts, en suivant les liens symboliques et les périphériques.
16. `lsof -P` :affiche les informations de processus (PID, PPID, COMMAND) dans la sortie.
17. `lsof -u ` :filtre les processus en fonction de l'utilisateur qui les possède.
Autres commandes utiles :
18. `lsof -i :8080 -n -P` :répertorie tous les processus écoutant sur le port 8080, y compris leurs PID, PID parents et commandes.
19. `lsof -a \| grep ` :recherche dans la sortie de lsof une chaîne de texte spécifique.
20. `lsof -u root -t ` :recherche le PID d'une commande exécutée en tant qu'utilisateur root.
21. `lsof -R /tmp/file -f` :répertorie tous les fichiers ouverts dans le répertoire /tmp/file, en suivant les liens symboliques et les périphériques.
Filtrage avancé :
22. `lsof -i TCP:LISTEN -c ` :Filtre l'écoute des connexions TCP pour un programme spécifique.
23. `lsof +c 0 -d 10` :répertorie les processus avec le descripteur de fichier 10 ouvert.
24. `lsof +r1 -n +a` :répertorie les processus qui ont des fichiers ouverts avec un accès en lecture et en écriture, et inclut leurs adresses IP.
25. `lsof -u person -g pid` :regroupe les processus par PID, en filtrant les processus appartenant à l'utilisateur "nobody".
Combiner lsof avec d'autres commandes :
26. `lsof | head` :affiche les premières lignes de la sortie.
27. `lsof -u root -t sshd -F p \| top -b -p` :combine les commandes lsof et top pour rechercher et trier les processus appartenant à l'utilisateur root exécutant le démon sshd, puis les affiche dans une interface de type top.
28. `lsof | grep | wc -l` :compte le nombre de processus portant le nom spécifié.
29. `lsof -i :22 -c sshd | tr -s ' ' "\n" \| uniq -c` :compte les combinaisons uniques d'adresses IP et de ports utilisées par sshd.
Surveillance en temps réel :
30. `watch -c lsof -F p | grep httpd` :surveille en permanence les processus avec des ports ouverts utilisés par le processus httpd.
31. `watch -g "lsof +e -u root -F n -l 10" -s 5` :surveille les nouveaux fichiers ouverts par l'utilisateur root, actualisant la sortie toutes les 5 secondes.
Divers :
32. `lsof -l -w *:8080` :répertorie les connexions TCP d'écoute sur le port 8080 ainsi que leurs descripteurs de fichiers.
33. `lsof -n +i@ -P` :répertorie les processus avec des connexions réseau ouvertes, y compris leurs PID, PPID et commandes.
34. `lsof -E -a +t` :affiche des informations détaillées sur les fichiers ouverts d'un programme spécifique, y compris les droits d'accès et les indicateurs.
35. `lsof -c cron|awk '{ print $1,$9 }'` :extrait les PID et ouvre les noms de fichiers pour les processus démarrés par le démon cron.
36. `lsof -a -d3 \| egrep 'deleted'` :recherche les fichiers qui ont été supprimés mais qui ont encore des descripteurs de fichiers ouverts.
Options supplémentaires :
37. `lsof -k` :liste basée sur le noyau (nécessite les privilèges root).
38. `lsof -o` :Omettre les informations sur les appels système de la sortie.
39. `lsof -S ` :sélectionnez le type de statistiques à afficher (par exemple, liées à la mémoire, E/S de fichier, etc.).
40. `lsof -t ` :répertorie les informations sur uniquement le PID spécifié, y compris les attributs de fichier étendus.
41. `lsof -x ` :exclut les processus pour lesquels le fichier donné n'est pas ouvert.
Ces exemples illustrent différentes manières d'utiliser la commande lsof pour identifier et surveiller les fichiers ouverts, les processus et les connexions réseau, ce qui en fait un outil polyvalent pour les tâches de dépannage du système, d'analyse de la sécurité et d'optimisation des performances.
|