FUSER(1) | Commandes de l'utilisateur | FUSER(1) |
fuser - identifie les processus qui utilisent des fichiers ou des sockets
fuser [-fuv] [-a|-s]
[-4|-6] [-c|-m|-n espace_noms]
[ -k [-i] [-M] [-w]
[-SIGNAL] ] nom ...
fuser -l
fuser -V
fuser affiche les PID des processus utilisant les fichiers ou les systèmes de fichiers spécifiés. Dans le mode d'affichage par défaut, chaque nom de fichier est suivi d'une lettre dénotant le type d'accès :
fuser retourne un code de retour non nul si aucun des fichiers spécifiés est accédé ou en cas d'erreur fatale. Si au moins un des fichiers accédés a été trouvé, fuser retourne zéro.
Afin de rechercher les processus utilisant des sockets TCP et UDP, l'espace de noms correspondant doit être sélectionné avec l'option -n. Par défaut, fuser recherchera les sockets IPv6 et IPv4. Pour changer le comportement par défaut, utilisez les options -4 et -6. Les sockets peuvent être spécifiés dans le port local, le port distant et l'adresse distante. Tous les champs sont optionnels mais une virgule doit être présente devant les champs manquants :
[port_local][,[hôte_distant][,[port_distant]]]
Des valeurs symboliques ou numériques peuvent être utilisées pour les adresses IP et les numéros de ports.
fuser envoie uniquement les PID vers stdout, le reste est envoyé vers stderr.
Les processus qui accèdent au même fichier ou système de fichiers plusieurs fois de la même manière sont montrés une seule fois.
Si le même objet est spécifié plusieurs fois sur la ligne de commande, certaines de ces entrées pourraient être ignorées.
fuser pourrait n'obtenir que des informations partielles à moins d'être exécuté avec des privilèges. Par conséquent, les fichiers ouverts par des processus appartenant à d'autres utilisateurs peuvent ne pas être listés et les exécutables peuvent être classés comme ouverts avec map.
fuser ne sait pas fournir de rapport sur un processus qu'il n'a pas la permission d'examiner dans la table des descripteurs de fichiers. Ceci se produit le plus fréquemment en examinant des sockets TCP ou UDP alors que fuser est exécuté par un compte non-root. Dans ce cas, fuser ne signalera aucun accès.
Installer fuser SUID root évitera les problèmes liés aux informations partielles, mais cela pourrait être indésirable pour des raisons de sécurité et de confidentialité.
Les espaces de noms upd et tcp ainsi que les sockets de domaines UNIX ne peuvent pas être recherchés avec les noyaux antérieurs à 1.3.78.
Les accès du noyau sont uniquement montrés avec l'option -v.
L'option -k fonctionne uniquement sur des processus. Si l'utilisateur est le noyau, fuser affichera une recommandation mais ne prendra aucune action particulière.
fuser ne verra pas les périphériques blocs montés par des processus dans un espace de noms de montage différent. Ceci est dû au ID du périphérique montré dans la table des descripteurs de fichiers du processus qui appartient à l'espace de noms du processus et non à celui de fuser. Par conséquent, il ne correspondra pas.
fuser -m /dev/sdX montrera (ou tuera avec l'option -k) tous les processus, même si ce périphérique n'est pas configuré. Il peut y avoir d'autres périphériques pour lesquels il fait ceci aussi.
L'option de montage -m correspond à tout fichier sur le même périphérique que le fichier spécifié. Utilisez l'option -M en plus si vous voulez spécifier uniquement le point de montage.
fuser ne correspondra pas aux fichiers mappés, tels qu'un processus d'une bibliothèque partagée, s'ils sont sur un système de fichiers btrfs(5) car les ID du périphérique sont différents pour stat(2) et /proc/<PID>/maps.
kill(1), killall(1), stat(2), btrfs(5), lsof(8), mount_namespaces(7), pkill(1), ps(1), kill(2).
2022-11-02 | psmisc |