GNU/Linux >> Tutoriels Linux >  >> Linux

La commande Linux lsof expliquée avec 12 exemples pratiques

Le lsof est un acronyme pour Liste des fichiers ouverts qui affiche des informations détaillées sur les fichiers qui sont maintenus ouverts sur un système Linux et sur les processus qui les ont ouverts. Il a été développé et soutenu par Victor A. Abell.

Cet article vous aidera à comprendre l'utilisation de la commande lsof avec 12 exemples pratiques.

Liste de tous les fichiers ouverts avec lsof

Pour afficher la liste des fichiers ouverts, exécutez simplement lsof et vous obtiendrez la sortie comme ci-dessous où vous pouvez voir un en-tête comme une commande, Pid, ​​User, FD, etc.

$ lsof

Dans l'exemple ci-dessus, la plupart des colonnes et leurs valeurs sont explicites. Voyons donc ce qu'est réellement FD, Fd fait référence au descripteur de fichier et contient des valeurs telles que :

  • cwd - répertoire de travail actuel
  • rtd – répertoire racine
  • txt – texte
  • mem ​​- fichier mappé en mémoire

Ouvrir la liste des fichiers pour un utilisateur spécifique

Vous pouvez spécifier l'utilisateur en utilisant l'option -u de la commande qui vous permet de lister tous les fichiers ouverts pour cet utilisateur.

$ lsof -u root

Répertorier les fichiers ouverts par identifiant de processus

Supposons que vous connaissiez le pid du processus spécifique, vous pouvez rechercher la liste des fichiers ouverts en fonction du pid en utilisant l'option -p avec la commande suivie de la valeur pid. Vous devez exécuter la commande comme spécifié dans l'exemple ci-dessous.

# lsof -p 82

Processus d'exécution de port spécifique

Pour vérifier quel processus a occupé le port spécifique, vous pouvez les lister en utilisant l'option -i avec le numéro de port sur TCP/UDP. Dans l'exemple suivant, trouvons quel processus a pris le port 80.

# lsof -i:80

Afficher la liste des fichiers réseau spécifiques (IPv4 et IPv6)

Afin d'afficher les fichiers ouverts en fonction du type de fichiers réseau, vous devez spécifier le type après l'option -i.

Pour IPv4, vous devez exécuter la commande comme ci-dessous.

# lsof -i 4

Pour IPv6, exécutez la commande,

# lsof -i 6

Rechercher des processus qui écoutent une plage de ports spécifique

Si vous souhaitez afficher la liste des fichiers ouverts de la plage de ports spécifique. Vous devez utiliser -i à la fin de la commande avec une plage de ports spécifique.

# losf -i TCP:1-100

Exclure l'utilisateur spécifique de la liste des fichiers ouverts

Vous pouvez exclure les utilisateurs de la sortie en utilisant le caractère '^' de la commande comme indiqué dans l'exemple suivant.

# lsof -i -u^sanju

Répertorier les processus par chemin de répertoire

Pour trouver un processus en cours d'exécution sur un répertoire spécifique, vous pouvez exécuter une commande avec l'option +D en suivant le chemin avec lui. Vous devez exécuter la commande de la manière suivante.

# lsof +D /home/sanju

Afficher les connexions réseau

Option utilisateur -i à la commande afin d'afficher la liste des connexions réseau en fonction de l'écoute et de l'établissement.

$ lsof -i

Tuer un processus spécifique

Parfois, certains processus peuvent résister à l'arrêt même si vous fermez le processus ou un processus inconnu peut prendre le port sur lequel vous souhaitez exécuter un programme spécifique. Afin de forcer l'arrêt du processus, vous pouvez utiliser la commande lsof car il est plus facile de lister le processus en cours d'exécution. Vous devez donc exécuter la commande de la manière suivante.

# kill -9 $(lsof -t -i:8080)

Répertorier les fichiers ouverts en fonction de FD (descripteur de fichier)

Vous pouvez filtrer les fichiers ouverts en fonction des types FD, vous devez utiliser l'option -d avec le type FD comme mentionné dans l'exemple ci-dessous.

# lsof -d rtd

Répertorier les fichiers ouverts en fonction du nom du processus

Vous pouvez répertorier les fichiers en fonction du nom du processus à l'aide de l'option -c avec la commande. Exécutez la commande de la manière suivante

# lsof -c nginx

Conclusion

Je vous remercie d'avoir consacré de votre temps pour parcourir cet article. J'espère que vous avez acquis des connaissances sur la façon dont la commande lsof peut être utilisée. Ce sont les choses que je trouve utiles lors du déploiement de l'application.


Linux
  1. Commande Linux wc avec exemples

  2. Commande Netstat sous Linux - 28 commandes avec exemples

  3. Commande Linux cut expliquée avec 6 exemples

  4. Commande d'arrêt Linux expliquée avec des exemples

  5. Commande Linux Traceroute, expliquée avec des exemples

Commande Tr sous Linux expliquée avec des exemples

w Commande expliquée avec des exemples sous Linux

La commande Wait sous Linux expliquée avec des exemples pratiques

Explication de la commande Linux tee (avec exemples)

La commande Linux csplit expliquée (avec des exemples)

Commande lsof sous Linux avec exemples