Her er 41 eksempler som viser ulike bruksområder for Linux lsof-kommandoen:
Grunnleggende bruk:
1. `lsof`:Viser alle åpne filer på systemet, inkludert deres prosess-ID (PID), filbeskrivelse, filbane og andre detaljer.
2. `lsof `:Viser alle filer som er åpnet av en spesifikk prosess med gitt PID.
Oppføring av spesifikk filinformasjon:
3. `lsof -a `:Viser alle prosesser som har tilgang til den angitte filen.
4. `lsof -p -a `:Sjekker om en bestemt fil er åpen av en bestemt prosess.
5. `lsof -c `:Viser alle åpne filer for prosesser med gitt navn.
Filtrering av utdata:
6. `lsof -w `:Viser kun prosesser med åpne filer som samsvarer med det angitte mønsteret.
7. `lsof -F `:Filtrerer utdata basert på typen filbeskrivelse (f.eks. f for vanlige filer, d for kataloger, p for pipes).
8. `lsof -i :`:Filtrerer prosesser som lytter på en bestemt IP-adresse og port.
9. `lsof -s `:Filtrerer prosesser basert på deres nåværende tilstand (f.eks. R for løping, S for sovende).
Sortere og begrense utdata:
10. `lsof -g `:Grupperer åpne filer etter filstørrelse eller prosess-ID, avhengig av den angitte gruppen.
11. `lsof -l `:Begrenser utdata til det angitte antallet linjer.
12. `lsof -L `:Sorterer utdata etter en spesifikk kolonne (f.eks. PID, COMMAND, SIZE, FD, MODE, TYPE).
Spesialalternativer:
13. `lsof -h`:Viser hjelpemenyen med detaljert informasjon om alle tilgjengelige alternativer.
14. `lsof -n `:Løser ikke numeriske adresser eller portnumre.
15. `lsof -R`:Lister rekursivt opp alle åpne filer, følger symbolske lenker og enheter.
16. `lsof -P`:Viser prosessinformasjon (PID, PPID, COMMAND) i utgangen.
17. `lsof -u `:Filtrerer prosesser basert på brukeren som eier dem.
Andre nyttige kommandoer:
18. `lsof -i :8080 -n -P`:Viser alle prosesser som lytter på port 8080, inkludert deres PID-er, overordnede PID-er og kommandoer.
19. `lsof -a \| grep `:Søker utdataene til lsof etter en bestemt tekststreng.
20. `lsof -u root -t `:Finner PID for en kommando som kjører som root-bruker.
21. `lsof -R /tmp/file -f`:Viser alle åpne filer i katalogen /tmp/file, etter symbolkoblinger og enheter.
Avansert filtrering:
22. `lsof -i TCP:LISTEN -c `:Filtrerer lyttende TCP-tilkoblinger for et spesifikt program.
23. `lsof +c 0 -d 10`:Viser prosesser med filbeskrivelse 10 åpen.
24. `lsof +r1 -n +a`:Viser prosesser som har åpne filer med lese- og skrivetilgang, og inkluderer deres IP-adresser.
25. `lsof -u nobody -g pid`:Grupperer prosesser etter PID, filtrerer etter prosesser som eies av brukeren "ingen."
Kombinering av lsof med andre kommandoer:
26. `lsof | head`:Viser de første linjene av utdata.
27. `lsof -u rot -t sshd -F p \| top -b -p`:Kombinerer lsof- og toppkommandoer for å finne og sortere prosesser som eies av rotbrukeren som kjører sshd-demonen, og viser dem deretter i et topplignende grensesnitt.
28. `lsof | grep | wc -l`:Teller antall prosesser med det angitte navnet.
29. `lsof -i :22 -c sshd | tr -s ' ' "\n" \| uniq -c`:Teller unike kombinasjoner av IP-adresser og porter som brukes av sshd.
Sanntidsovervåking:
30. `watch -c lsof -F p | grep httpd`:Overvåker kontinuerlig prosesser med åpne porter som brukes av httpd-prosessen.
31. `watch -g "lsof +e -u root -F n -l 10" -s 5`:Ser etter nye filer som åpnes av root-brukeren, og oppdaterer utdata hvert 5. sekund.
Diverse:
32. `lsof -l -w *:8080`:Viser lyttende TCP-tilkoblinger på port 8080 sammen med filbeskrivelsene deres.
33. `lsof -n +i@ -P`:Viser prosesser med åpne nettverkstilkoblinger, inkludert deres PID-er, PPID-er og kommandoer.
34. `lsof -E -a +t`:Viser utvidet informasjon om åpne filer til et spesifikt program, inkludert tilgangsrettigheter og flagg.
35. `lsof -c cron|awk '{ print $1,$9 }'`:Trekker ut PID-er og åpne filnavn for prosesser startet av cron-daemonen.
36. `lsof -a -d3 \| egrep 'deleted'`:Søker etter filer som har blitt slettet, men som fortsatt har åpne filhåndtak.
Tilleggsalternativer:
37. `lsof -k`:Kjernebasert oppføring (krever root-privilegier).
38. `lsof -o`:Utelat systemanropsinformasjon fra utdata.
39. `lsof -S `:Velg typen statistikk som skal vises (f.eks. minnerelatert, fil-I/O, etc.).
40. `lsof -t `:Liste informasjon om kun den angitte PID, inkludert utvidede filattributter.
41. `lsof -x `:Ekskluder prosesser som ikke har den gitte filen åpen.
Disse eksemplene illustrerer ulike måter å bruke lsof-kommandoen til å identifisere og overvåke åpne filer, prosesser og nettverkstilkoblinger, noe som gjør det til et allsidig verktøy for systemfeilsøking, sikkerhetsanalyse og ytelsesoptimaliseringsoppgaver.