Hvordan bruke LSOF -kommandoen i Linux

Hvordan bruke LSOF -kommandoen i Linux
I Linux -miljøet regnes alt som en fil og administrert i mapper eller kataloger. Så mens du jobber med Linux -operativsystemet, kan det være antall mapper og filer som brukes; Noen av dem vil være synlige for brukere, og andre kan være skjult. Så filhåndtering er veldig viktig i Linux/UNIX -distribusjoner.

I Linux -systemet er den mest populære kommandoen LSOF, forkortet for liste over åpen fil. Denne kommandoen viser informasjonen om filene som er åpnet på systemet ditt. Med andre enkle ord kan vi forklare at LSOF -kommandoen gir informasjon om filene som åpnes etter hvilken prosess. Den lister ganske enkelt ned de åpne filene på utgangskonsollen. Den viser katalog, delt bibliotek, blokkerer spesialfil, vanlig rør, en internettkontakt, karakterspesialfil, UNIX -domeneuttak og flere andre. LSOF -kommando kan brukes til å kombinere med GREP -kommandoen for å gjøre mer avanserte funksjoner for oppføring og søk.

Denne artikkelen vil gi deg en grunnleggende forståelse av LSOF -kommandoen. Dessuten vil du utforske hvordan du bruker denne kommandoen i Linux -miljøet.

Forutsetninger

Du må logge inn som en rotbruker på systemet ditt eller må ha sudo -kommando -privillag.

Vi har utført all oppgave på Ubuntu 20.04 System, som er nevnt nedenfor:

Liste opp åpne filer ved hjelp av LSOF -kommandoen

Du kan liste opp alle åpnede filer med en komplett beskrivelse ved hjelp av LSOF -kommandoen.

# LSOF


For eksempel har vi her listet opp noen åpne filer for din bedre forståelse. I skjermbildet nedenfor vil du se informasjonen i form av kolonner som kommando, PID, bruker, FD, type, etc.

La oss forklare hvert begrep en etter en. I den første kolonnen vil du se kommandoen brukes til kommandonavnet. PID viser prosess -ID. Under kolonnen som heter bruker, vil du se brukerrollen eller navnet. De ovennevnte verdiene i bildet er selvforklarende. Vi vil imidlertid gjennomgå typen og FD -kolonnene.

FD brukes til en filbeskrivelse som har noen verdier som:

  • CWD - Representerer den gjeldende arbeidskatalogen.
  • rtd - Viser rotkatalogen
  • tekst - Brukes til programkode og tekstdata
  • mem - Brukes til minnekartlagt fil
  • 1U - Filbeskrivelse u for lese- og skrivemodus, w for skrivemodus, og R brukt til lesemodus.

Type -kolonnen inneholder alle filer og identifikasjoner ved hjelp av nøkkelord. Dir betyr katalog. Reg representerer den vanlige filen. CHR brukes til spesielle filer. FIFO betyr først inn først ut.

Liste brukerspesifikke filer ved hjelp av LSOF-kommandoen

Hvis vi for eksempel vil liste opp alle åpnede filer med brukernavn Kbuzdar, kan du ved å bruke følgende kommando gjøre dette:

$ sudo lsof -u kbuzdar

Søkeprosesser som jobber med en bestemt port

Du kan søke i filene eller prosessene de som kjører på et bestemt portnummer. For dette formålet trenger du bare å bruke følgende kommando med -i -alternativet og angi et bestemt portnummer.

# lsof -i tcp: 22

Hvis du vil liste opp alle åpne filer som kjører prosesser av TCP-port som varierer mellom 1-1024, må du utføre den nedenfor-nevnte kommandoen:

# LSOF -I TCP: 1-1024

Vis åpne filer bare for IPv4 og IPv6

For eksempel vil du bare vise IPv4 og IPv6 nettverksfiler. Kjør følgende kommando for å åpne filer for IPv4 i terminalvinduet:

# lsof -i 4

For IPv6, bruk følgende kommando:

# lsof -i 6

Vis filer ved å ekskludere spesifikke brukere

Hvis du vil ekskludere en rotbruker da, kan du ekskludere en rotbruker ved å bruke '^' -tegnet med kommandoen som vises i skjermbildet nedenfor:

# lsof -i -u^root


Du kan ekskludere en bestemt bruker ved å bruke navnet deres.

# lsof -i -u^kbuzdar

Vis alle nettverkstilkoblinger ved hjelp av LSOF -kommandoen

Skriv inn følgende LSOF -kommando med alternativ -i for å vise listen over alle nettverkstilkoblinger:

# lsof -i

Søkeprosess av PID

I det følgende eksemplet viser bare filene eller prosessene hvis PID er 2 [to].

# lsof -p 2

Drep bestemte brukeraktiviteter

Noen ganger kan det hende du trenger spesifikke brukerprosesser. I dette tilfellet, ved å utføre følgende kommando, kan du drepe alle prosessene til 'Kbuzdar' bruker.

# Kill -9 'lsof -t -u kbuzdar'

Konklusjon

I denne artikkelen har vi sett hvordan du bruker LSOF -kommandoen på Linux -systemet. Vi har implementert forskjellige eksempler for en bedre forståelse av LSOF -kommandoen. Det er ikke mulig å utdype alle tilgjengelige alternativer, men du kan utforske Man -siden til LSOF -kommandoen for å få mer om denne kommandoen. Del med oss ​​dine tilbakemeldinger via kommentarer.