zion - fuser
Nom
fuser - Identifier les processus qui utilisent un fichier.
Résumé
fuser [ -a | -s ] [-4 | -6] [ -n espace ] [ -signal ] [ -kmuv ] nom ... fuser -l fuser -V .ad b
Description
fuser affiche les PIDs des processus qui utilisent les fichiers ou les systèmes de fichiers indiqués. Par défaut, il affiche les PIDs suivis d'une lettre indiquant le type d'accès.
c
e
f
r
m
|
fuser renvoie un code de retour non nul si aucun des fichiers mentionnés n'est utilisé, ou en cas d'erreur fatale. Si au moins un accès est détecté pour l'un des fichiers mentionnés, fuser renvoie zéro.
Pour rechercher les processus utilisant les sockets UDP ou TCP, l'espace de nom correspondant doit être sélectionné avec l'option -n. Par défaut fuser recherchera les socket IPv4 et IPv6. Pour modifier ceci, utilisez les options -4 ou -6. Les sockets peuvent être spécifiées par leurs port local ou distant et l'adresse distante. Tous les champs sont facultatifs, mais il faut une virgule après un champ absent : [port_lcl][,[hôte_dst][,[port_dst]]] Pour les adresses IP et numéros de port, on peut utiliser des numéros ou des noms symboliques.
Options
-a
Montrer tous les fichiers mentionnés sur la ligne de commande. Par défaut seuls les fichiers utilisés par un processus au moins seront affichés. |
-k
Envoyer un signal aux processus utilisant les fichiers. Si le modificateur -signal, n'est pas mentionné, c'est le signal SIGKILL qui est envoyé. Un processus fuser ne se tue jamais lui-même, mais il peut tuer d'autres processus fuser. L'UID effectif du processus exécutant fuser est remplacé par son UID réel avant l'émission du signal. |
-l
Afficher la liste des noms de signaux disponibles. |
-m
fichier se trouve sur un système de fichiers monté, ou est un périphérique bloc monté. Tous les processus accédant aux fichiers sur ce système seront affichés. Si le nom d'un répertoire est mentionné, il est automatiquement remplacé par fichier/. pour inclure tous les systèmes de fichiers pouvant être montés en dessous de lui. |
-n espace
Sélectionner un espace de noms différent. Sont supportés : file (les noms de fichiers, par défaut), udp et tcp pour les ports locaux. Pour les ports on peut indiquer un numéro ou un nom de service. S'il n'y a pas d'ambiguïté, le raccourci nom/espace est accepté. |
-s
Agir en silence. Les options -a, -u et -v sont alors ignorées. |
-signal
Envoyer le signal indiqué plutôt que SIGKILL. On peut mentionner soit le nom du signal (ex : -HUP), soit son numéro (ex : -1). |
-u
Ajouter à chaque PID le nom d'utilisateur de son propriétaire. |
-v
Mode volubile. Les processus sont présentés à la manière de ps. Les champs PID, USER et COMMAND sont similaires à ceux de ps. ACCESS indique le type d'utilisation du fichier. |
-V
Afficher le numéro de version. |
-4
Ne chercher que des sopckets IPv4. Cette option ne peut pas être utilisée avec -6 et n'a d'effet que sur les espaces de nom tcp et udp. |
-6
Ne chercher que des sopckets IPv6. Cette option ne peut pas être utilisée avec -4 et n'a d'effet que sur les espaces de nom tcp et udp. |
-
Remettre toutes les options à leurs valeurs par défaut, et le signal à SIGKILL. |
Fichiers
.nf /proc Emplacement du système de fichiers proc .fi
Exemples
fuser -km /home tue tous les processus accédant de quelque manière que ce soit au système de fichiers /home.
if fuser -s /dev/ttyS1; then :; else qqchose; fi appelle qqchose si aucun autre processus n'utilise /dev/ttyS1.
fuser telnet/tcp affiche tous les processus du port (local) TELNET.
Restrictions
Les processus accédant plusieurs fois au même fichier, ou au même système de fichiers ne sont affichés qu'une fois.
Si le même objet est spécifié plusieurs fois sur la ligne de commande, certaines occurrences peuvent être ignorées.
fuser ne dispose de toutes les informations que s'il est exécuté avec les privilèges de root. Ainsi, des fichiers ouverts par des processus appartenant à d'autres utilisateurs n'apparaîtront peut-être pas, et des exécutables peuvent n'être vus qu'en tant que projection en mémoire.
L'installation de fuser en tant que SUID root évite les problèmes d'informations incomplètes, mais peut être gênant pour des raisons de sécurité et de discrétion.
Les espaces de nom udp et tcp, et les sockets du domaine UNIX ne fonctionnent pas avec les noyaux antérieurs au 1.3.78.
udp et tcp fonctionnent avec IPv6 et IPv4, mais les adresses sont uniquement du type IPv4.
Les accès par le noyau ne sont affichés qu'avec l'option -v.
L'option -k ne fonctionne que sur les processus. Si l'utilisateur est le noyau, fuser affichera un message mais ne fera rien de plus.
Auteur
Werner Almesberger <werner.almesberger@lrc.di.epfl.ch>
Voir aussi
kill (1), killall (1), lsof (8), ps (1), kill (2)
Traduction
Christophe Blaess, 1997-2003.
Poster un commentaire