Har du nogensinde prøvet at lukke din shell eller afmontere et drev kun for at få en fejlmeddelelse om, at en eller flere filer er i brug? Eller måske har du prøvet at redigere en fil kun for at finde ud af, at den er låst af et andet program?

Måske er du bekymret for, at nogen på en eller anden måde har fået uautoriseret adgang til dit Linux-system. Ved hjælp af et værktøj kaldet lsof kan du se, hvilke filer der er åbne, selv over netværksforbindelser.

Hvad er lsof?

lsof er et værktøj, der viser åbne filer. Victor Abell udviklede det oprindeligt på Purdue University. Den er tilgængelig til flere Unix-implementeringer, inklusive Linux. Det vedligeholdes i øjeblikket af lsof-org-teamet på GitHub.

Installerer lsof på Linux

Der er en god chance for, at du allerede har lof installeret på dit system. Prøv at skrive lsof på kommandolinjen. Hvis det ikke er det, kan du installere det via din distros pakkehåndtering.

På et Ubuntu- eller Debian-system skal du skrive:

sudo apt installere lsof

Arch-baserede Linux-distributioner:

instagram viewer
sudo pacman -S lsof

Og på RHEL, Rocky Linux og Oracle Linux:

sudo dnf installere lsof

Visning af åbne filer på Linux med lsof

Det er ligetil at bruge lsof. Du kan bare kalde det på kommandolinjen for at se alle åbne filer, der tilhører dig:

lsof

lsof kan angive processer, der tilhører root, som "Tilladelse nægtet." For at se alle filer, der er åbne af alle processer i hele systemet, skal du køre det som root:

sudo lsof

lsof vil vise kommandoen, PID'en, brugeren, der kaldte den, filbeskrivelsen, typen, enheden, størrelsen, noden og det absolutte stinavn for den åbne fil.

Hvis du forsøger at afmontere et drev såsom et optisk drev og får en fejlmeddelelse om, at filer er i brug, kan du se, hvilken proces der bruger filen, og derefter afslutte eller dræbe den.

For at se eventuelle internetstik, der i øjeblikket er i brug på dit system, skal du bruge -jeg mulighed:

sudo lsof -i

Du kan opdage mulig indtrængen, hvis du bemærker noget mistænkeligt på dit system, men mere sofistikerede angribere kan muligvis dække deres spor bedre.

Det -r indstillingen sætter lsof i gentagelsestilstand, hvor den vil vise resultater efter et vist interval, indtil du trykker Ctrl + C. Som standard kører den hvert 15. sekund, men du kan ændre det. For eksempel kan du køre kommandoen hvert 10. sekund ved at skrive:

lsof -r 10

Som med andre Linux-værktøjer kan du kombinere disse switches. Antag, at du ville se din internetforbindelse hvert femte sekund. Du kan gøre det med lsof ved at skrive:

lsof -i -r 5

Nu kan du spore, hvilke Linux-processer der har åbne filer

Med lsof kan du spore, hvilke processer der har åbne filer og rette eventuelle problemer, de måtte forårsage.

Åbne filer er kun en facet af Linux-processer. Der er så mange måder at styre processer på på Linux. Det er nemt at starte, stoppe og undersøge processer i Linux, så du kan få mest muligt ud af dit system.