FUSER(1) | Comenzi pentru utilizator | FUSER(1) |
fuser - identifică procesele care utilizează fișiere sau socluri
fuser [-fuv] [-a|-s]
[-4|-6] [-c|-m|-n
spațiu_nume] [ -k [-i] [-M]
[-w] [-SEMNAL] ] nume ...
fuser -l
fuser -V
fuser afișează PID-urile proceselor care utilizează fișierele sau sistemele de fișiere specificate. În modul de afișare implicit, fiecare nume de fișier este urmat de o literă care indică tipul de acces:
fuser returnează un cod de returnare diferit de zero dacă niciunul dintre fișierele specificate nu este accesat sau în cazul unei erori fatale. Dacă a fost găsit cel puțin un fișier accesat, fuser returnează zero.
Pentru a căuta procese folosind socluri TCP și UDP, spațiul de nume corespunzător trebuie să fie selectat cu opțiunea -n. În mod implicit, fuser va căuta atât în soclurile IPv6, cât și în soclurile IPv4. Pentru a modifica comportamentul implicit, utilizați opțiunile -4 și -6. Soclurile pot fi specificate prin portul local și de la distanță și prin adresa de la distanță. Toate câmpurile sunt opționale, dar virgulele din fața câmpurilor lipsă trebuie să fie prezente:
[port_local][,[gazdă_rmt][,[port_rmt]]] notă: rmt = la distanță(remote)
Puteți utiliza fie valori simbolice, fie valori numerice pentru adresele IP și numerele de porturi.
fuser afișează doar PID-urile la ieșirea standard, orice altceva este trimis către ieșirea de eroare standard.
Procesele care accesează același fișier sau sistem de fișiere de mai multe ori în același mod sunt afișate o singură dată.
Dacă același obiect este specificat de mai multe ori în linia de comandă, unele dintre aceste intrări pot fi ignorate.
fuser poate obține doar informații parțiale, cu excepția cazului în care rulează cu privilegii. În consecință, fișierele deschise de procese aparținând altor utilizatori pot să nu fie listate și executabilele pot să fie clasificate doar ca asociate cu fișierul.
fuser nu poate raporta niciun proces pentru care nu are permisiunea de a căuta în tabelul descriptor al fișierului. Cel mai frecvent caz în care apare această problemă este atunci când se caută socluri TCP sau UDP în timp ce fuser rulează ca utilizator non-root. În acest caz, fuser va raporta că nu există acces.
Instalarea lui fuser cu SUID root va evita problemele asociate cu informațiile parțiale, dar poate fi nedorită din motive de securitate și confidențialitate.
Spațiile de nume udp și tcp și soclurile de domeniu UNIX nu pot fi căutate cu nuclee mai vechi de 1.3.78.
Accesările de către nucleu sunt afișate doar cu opțiunea -v.
Opțiunea -k funcționează numai asupra proceselor. Dacă utilizatorul este nucleul, fuser va afișa un sfat, dar nu va lua nicio măsură în afară de aceasta.
fuser nu va vedea dispozitivele bloc montate de procese într-un spațiu de nume de montare diferit. Acest lucru se datorează faptului că ID-ul dispozitivului afișat în tabelul descriptor al fișierului procesului provine din spațiul de nume al procesului, nu din cel al «fuser»; adică nu se va potrivi.
fuser -m /dev/sgX va afișa (sau va ucide cu opțiuneal -k) toate procesele, chiar dacă nu aveți acel dispozitiv configurat. Pot exista și alte dispozitive pentru care face acest lucru.
Opțiunea de montare -m se va potrivi cu orice fișier din același dispozitiv cu fișierul specificat, utilizați și opțiunea -M dacă doriți să specificați doar punctul de montare.
fuser nu va potrivi fișierele copiate în memorie, cum ar fi bibliotecile partajate ale unui proces, dacă acestea se află pe un sistem de fișiere btrfs(5) din cauza faptului că ID-urile de dispozitiv sunt diferite pentru stat(2) și /proc/<PID>/maps.
kill(1), killall(1), stat(2), btrfs(5), lsof(8), mount_namespaces(7), pkill(1), ps(1), kill(2).
02.11.2022 | psmisc |