FUSER(1)

NAMN
fuser - identifiera processer som använder filer eller uttag

SYNOPSIS
fuser [-fuv] [-a|-s] [-4|-6] [-c|-m|-n utrymme] [ -k [-i] [-M] [-w] [-SIGNAL] ] namn ...
fuser -l
fuser -V

BESKRIVNING
fuser visar PID:arna för processor som använder den angivna filerna eller filsystemen. I standardvisningsläge kommer varje filnamn att åtföljas av en bokstav som visar typen av åtkomst:

    c   aktuell katalog.
    e   körbar fil körs.
    f   fil öppen. f utelämnas i standardvisningsläge.
    F   öppen för skrivning. F utelämnas i standardvisningsläge.
    r   rotkatalog.
    m   mmap:pad fil eller delat bibliotek.
    .   Platshållare, utelämnas i standardvisningsläge.

fuser returnerar en returkod som inte är noll om ingen av de angivna filerna används eller vid ett fatalt fel. Om åtminstone en åtkomst hittats kommer fuser att returnera noll.

För att slå upp processer som använder TCP- och UDP-uttag måste motsvarande namnrymd väljas med flaggan -n. Som standard kommer fuser att leta bland både IPv6- och IPv4-uttag. För att förändra standardbeteendet, använd flaggorna -4 och -6. Uttagen kan anges antingen efter lokal eller fjärrport och fjärradressen. Alla fält är valfria, men komman i början av fält som saknas måste finnas:

[lkl_port][,[fjr_värd][,[fjr_port]]]

Endera symboliska eller numeriska värden kan användas för IP-adresser och portnummer.

fuser matar endas ut PID:ar till standard ut, allting annat skickas till standard fel.

FLAGGOR

-a, --all
    Visa alla filer angivna på kommandoraden. Som standard visas endast filer som används av åtminstone en process.

-c  Samma som flaggan -m, används för POSIX-kompatibilitet.

-f  Ignoreras tyst, används för POSIX-kompatibilitet.

-k, --kill
    Döda processer som kommer åt filen. Om det inte ändrats med -SIGNAL, så skickas SIGKILL. En fuser process dödar aldrig sig själv, men kan döda andra fuser-processer. Det effektiva användar-ID:t för processen som kör fuser sätts till dess riktiga användar-ID innan försök att döda.

-i, --interactive
    Fråga användaren om bekräftelse innan en process dödas. Denna flagga ignoreras tyst om -k saknas.

-I, --inode
    För namnrymden file låt alla jämförelser baseras på inoderna för de angivna filerna och aldrig på filnamnen, gäller även för nätverksbaserade filsystem.

-l, --list-signals
    Lista alla kända signaler.

-m NAMN, --mount NAMN
    NAMN anger en fil på ett monterat filsystem eller en blockenhet som är monterad. Alla processer som använder filer på det filsystemet listas. Om en katalog inte anges, ändras den automatiskt till NAMN/ för att använda eventuellt filsystem som monterats på den katalogen.

the shortcut notation
    Begäran kommer att uppfyllas om NAMN anger en monteringspunkt. Detta är ett ovärderligt säkerhetsbälte vilket förhindrar sig från att döda maskinen om NAMN inte råkas vara ett filsystem.

-w  Döda endast processer som har skrivåtkomst. Denna flagga ignoreras tyst om -k saknas.

-n NAMNRYMD, --namespace NAMNRYMD
    Välj en annan namnrymd. Namnrymderna file (filnamn, standardvärdet), udp (lokala UDP-portar) och tcp (lokala TCP-portar) stöds. För portar kan antingen portnumret eller det symboliska namnet anges. Om det inte finns tvetydighet kan kortbeteckningen namn/rymd användas (t.ex. 80/tcp).

-s, --silent
    Tyst läge. -u och -v ignoreras i detta läge. -a kan inte användas tillsammans med -s.

-SIGNAL
    Använd den angivna signalen istället för SIGKILL då processer dödas. Signaler kan ange antingen med namn (t.ex. -HUP) eller med nummer (t.ex. -1). Denna flagga ignoreras tyst om flaggan -k inte används.

-u, --user
    Lägg till användarnamnet för processägaren till varje PID.

-v, --verbose
    Utförligt läge. Processer visas i en ps-liknande stil. Fälten PID, USER och COMMAND liknar de från ps. ACCESS visar hur processen använder filen. Utförligt läge kommer också att visa när en särskild fil används som en monteringspunkt, knfs exportering eller speglingsfil. I detta fall visas kernel istället för PID:en.

-V, --version
    Visa versionsinformation.

-4, --ipv4
    SökSök endast efter IPv4-uttag. Denna flagga kan inte användas tillsammans med flaggan -6 och påverkar bara tcp- och udp-namnrymderna.

-6, --ipv6
    Sök endast efter IPv6-uttag. Denna flagga kan inte användas tillsammans med flaggan -4 och påverkar bara tcp- och udp-namnrymderna.

FILER

/proc
    plats för proc-filsystemet

EXEMPEL

fuser -km /home
    dödar alla processer som använder filsystemet /home på något sätt.

if fuser -s /dev/ttyS1; then :; else kommando; fi
    kör kommando om inga andra processer använder /dev/ttyS1.

fuser telnet/tcp
    visar alla processer på den (lokala) TELNET-porten.

BEGRÄNSNINGAR
Processer som använder samma fil eller filsystem flera gånger på samma sätt visas endast en gång.

Om samma objekt anges flera gånger på kommandoraden, kommer vissa av de posterna att ignoreras.

fuser kanska bara kan samla ihop partiell information om det körs utan privilegier. Som en konsekvens kanske filer öppnade av processer som tillhör andra användare inte komma att listas och körbara filer kanske endast klassificeras som mappade.

fuser kan inte rapportera processor som det inte har tillåtelse att titta på fildeskriptortabellen för. Det mest frekventa tillfället då detta problem uppstår är när man letar efter TCP- eller UDP-uttag och fuser inte körs som root-användare. I detta fall kommer fuser inte att rapportera någon användning.

Att installera fuser som SUID root kommer att undvika problem associerade med ofullständig information, men kan vara oönskat av säkerhets- och sekretesskäl.

udp- och tcp-namnrymder och UNIX-domänuttag kan inte genomsökas med kärnor äldre än 1.3.78.

Åtkomst av kärnan visas endast med flaggan -v.

Flaggan -k fungerar endast för processer. Om användaren är kärnan kommer fuser att skriva ut en rekommendation, men inte genomföra någon åtgärd utöver det.

fuser kommer inte att se blockenheter monterade av processer i en annan monteringsnamnrymd. Detta är på grund av att enhets-ID:t som visas i processens fildeskriptortabell kommer från processnamnrymden, inte fusers; vilket innebär att de inte matchar.

FEL

fuser -m /dev/sgX kommer att visa (eller döda med -k-flaggan) alla processer även om du inte har den enheten konfigurerad. Det kan finnas ytterligare enheter detta gäller.

Monteringsflaggan -m kommer att matcha alla filer inom samma enhet som den angivna filen, använd även flaggan -M om det endast menar att ange monteringspunkten.

fuser will not match mapped files, such as a process' shared libraries if they are on a btrfs(5) filesystem due to the device IDs being different for stat(2) and /proc/<PID>/maps.

SE VIDARE
kill(1), killall(1), stat(2), btrfs(5), lsof(8), mount_namespaces(7), pkill(1), ps(1), kill(2).