Naučite kako koristiti naredbu 'fuser' s primjerima u Linuxu
Jedan od najvažnijih zadataka u administraciji Linux sistema je upravljanje procesima. Uključuje nekoliko operacija pod nadzorom, procese signalizacije kao i postavljanje prioriteta procesa u sistemu.
Postoje brojni Linux alati/uslužni programi dizajnirani za praćenje/rukovanje procesima kao što su top, ps, pgrep, kill, killall, nice zajedno sa mnogim drugima.
U ovom članku ćemo otkriti kako pronaći procese pomoću snalažljivog Linux uslužnog programa pod nazivom fuser.
Preporučeno čitanje: Pronađite najbolje pokrenute procese prema najvećoj upotrebi memorije i CPU-a
fuser je jednostavan, ali moćan uslužni program komandne linije namijenjen za lociranje procesa na osnovu datoteka, direktorija ili utičnice kojoj određeni proces pristupa. Ukratko, pomaže korisniku sistema da identifikuje procese koristeći datoteke ili utičnice.
Kako koristiti fuzer u Linux sistemima
Konvencionalna sintaksa za korištenje fusera je:
fuser [options] [file|socket]
fuser [options] -SIGNAL [file|socket]
fuser -l
Ispod je nekoliko primjera korištenja fusera za lociranje procesa na vašem sistemu.
Pronađite koji proces pristupa direktoriju
Pokretanje naredbe fuser bez ikakve opcije će prikazati PID-ove procesa koji trenutno pristupaju vašem trenutnom radnom direktoriju.
fuser .
OR
fuser /home/tecmint
Za detaljniji i jasniji izlaz, omogućite -v
ili --verbose
kako slijedi. U izlazu, fuser ispisuje ime trenutnog direktorija, zatim stupce vlasnika procesa (USER), ID procesa (PID) , tip pristupa (ACCESS) i naredbu (COMMAND) kao na slici ispod.
fuser -v
U koloni PRISTUP vidjet ćete tipove pristupa označene sljedećim slovima:
c
– trenutni direktorije
– izvršna datoteka koja se pokrećef
– otvori datoteku, međutim, f je izostavljen u izlazuF
– otvoren fajl za pisanje, F je također isključen iz izlazar
– korijenski direktorijm
– mmapovana datoteka ili dijeljena biblioteka
Pronađite koji proces pristupa sistemu datoteka
Zatim možete odrediti koji procesi pristupaju vašoj datoteci ~.bashrc
na sljedeći način:
fuser -v -m .bashrc
Opcija, -m
NAME ili --mount
NAME znači ime svih procesa koji pristupaju datoteci NAME. U slučaju da napišete direktorij kao NAME, on se spontano mijenja u NAME/
, kako bi se koristio bilo koji sistem datoteka koji je eventualno montiran na tom direktoriju.
Preporučeno čitanje: Pronađite top 15 procesa po korištenju memorije u Linuxu
Kako ubiti i signalizirati procese pomoću fuzera
U ovom odjeljku ćemo raditi na korištenju fusera za ubijanje i slanje signala procesima.
Da biste ugasili procese koji pristupaju datoteci ili socketu, koristite opciju -k
ili --kill
na sljedeći način:
sudo fuser -k .
Da biste interaktivno ugasili proces, gdje se od vas traži da potvrdite svoju namjeru da prekinete procese koji pristupaju datoteci ili soketu, koristite opciju -i
ili --interactive
:
sudo fuser -ki .
Dvije prethodne naredbe će ubiti sve procese koji pristupaju vašem trenutnom direktoriju, zadani signal koji se šalje procesima je SIGKILL, osim kada se koristi -SIGNAL .
Preporučeno čitanje: Vodič za Kill, Pkill i Killall komande u Linuxu
Možete navesti sve signale koristeći opcije -l
ili --list-signals
kao u nastavku:
sudo fuser --list-signals
Stoga možete poslati signal procesima kao u sljedećoj naredbi, gdje je SIGNAL bilo koji od signala navedenih u izlazu iznad.
sudo fuser -k -SIGNAL
Na primjer, ova naredba u nastavku šalje HUP signal svim procesima koji imaju otvoren vaš /boot
direktorij.
sudo fuser -k -HUP /boot
Pokušajte pročitati man stranicu fuser za napredne opcije korištenja, dodatne i detaljnije informacije.
To je to za sada, možete nas kontaktirati putem odjeljka za povratne informacije u nastavku za svaku pomoć koja vam je potrebna ili prijedloge koje želite da date.