lsof et fuser
100%

Utilisation des Processus · Leçon 2

lsof et fuser

Découvrez comment identifier les processus qui utilisent des fichiers, des répertoires, des points de montage et des sockets réseau.

Un système de fichiers peut rester occupé parce qu’un processus possède un fichier ouvert, mappe un fichier en mémoire ou emploie un répertoire comme répertoire de travail actuel. lsof et fuser aident à identifier ces relations. Commencez par examiner la situation ; l’arrêt des processus constitue une décision distincte aux conséquences opérationnelles.

Répertorier les fichiers ouverts avec lsof

lsof signifie « list open files ». Interrogez un chemin pour afficher les enregistrements de fichiers ouverts correspondants :

$ sudo lsof -- /mnt/usb

Pour toute une arborescence du même système de fichiers, les implémentations prennent couramment en charge +D, mais les analyses récursives peuvent être coûteuses :

$ sudo lsof +D /mnt/usb

Les colonnes utiles comprennent COMMAND, PID, USER, le descripteur de fichier (FD), le type, le périphérique et NAME. Un enregistrement dont le champ FD vaut cwd indique que le processus emploie ce répertoire comme répertoire de travail actuel. La sortie sans privilèges peut être incomplète pour les processus appartenant à d’autres utilisateurs.

Qu’indique cwd dans la colonne FD ?

Identifier les utilisateurs avec fuser

fuser indique les identifiants des processus qui utilisent un fichier ou un système de fichiers donné. La sortie détaillée ajoute les utilisateurs, les types d’accès et les noms des commandes :

$ sudo fuser -v /mnt/usb

Pour traiter l’argument comme un système de fichiers monté et trouver les processus qui accèdent aux fichiers qu’il contient, employez l’option de montage prise en charge par fuser de procps :

$ sudo fuser -vm /mnt/usb

Vérifiez que le chemin est bien le point de montage voulu avec un outil tel que findmnt --target /mnt/usb. Les montages liés, les espaces de noms, les permissions et les conditions de concurrence peuvent influencer ce qu’une requête unique révèle.

Pourquoi employer fuser -v plutôt que fuser seul pendant une investigation ?

Traiter un système de fichiers occupé

Suivez une séquence délibérée au lieu de tuer immédiatement chaque PID correspondant :

  1. Confirmez l’hôte, le chemin, la source du montage et la maintenance prévue.
  2. Identifiez les processus avec les deux outils lorsque c’est possible.
  3. Déterminez si chaque processus peut être arrêté, quitter le répertoire ou terminer son travail.
  4. Arrêtez-le par son gestionnaire de services ou l’interface de l’application lorsqu’ils existent.
  5. Interrogez de nouveau, puis démontez et vérifiez le résultat.

fuser -k envoie un signal aux processus correspondants. Sur les implémentations procps courantes, le signal par défaut est SIGKILL et ne permet donc pas un arrêt ordonné. Si une terminaison explicitement approuvée est nécessaire, choisissez un signal adapté, vérifiez le PID et son propriétaire, et gardez à l’esprit que l’ensemble des processus peut changer entre l’examen et l’action.

Pourquoi fuser -k /mnt/usb constitue-t-il une mauvaise première étape de dépannage ?

Choisir l’outil

Employez lsof lorsque vous avez besoin d’enregistrements détaillés sur les fichiers ouverts, les descripteurs ou les sockets. Employez fuser pour une vue centrée sur un chemin des PID et des types d’accès correspondants. Aucun résultat ne vous indique à lui seul si l’arrêt d’un processus est sûr.

Pour les sockets réseau, utilisez un espace de noms de protocole explicite avec fuser ou un outil centré sur les sockets tel que ss :

$ sudo fuser -v 22/tcp
$ sudo ss -lntp

Quel outil convient à une liste détaillée des descripteurs de fichiers ouverts et de leurs processus propriétaires ?

Leçon terminée

Vous avez terminé lsof et fuser

Vous savez maintenant analyser l’utilisation des fichiers et des systèmes de fichiers sans considérer la terminaison comme la réponse par défaut.

  • Employer lsof pour les enregistrements détaillés des fichiers ouverts.

  • Employer fuser pour les PID et les types d’accès centrés sur un chemin.

  • Confirmer le montage et tenir compte des permissions et des conditions de concurrence.

  • Coordonner un arrêt ordonné avant d’envisager un signal.

  • Interroger de nouveau et vérifier le démontage ou le résultat sur le service.

Conservez votre progression

Créez un compte gratuit pour enregistrer cette leçon et continuer sur n'importe quel appareil.

Créer un compte gratuit
Leçon Suivante
Retour à Utilisation des Processus