Ako používať lsof na sledovanie otvorených súborov v systéme Linux

Ako používať lsof na sledovanie otvorených súborov v systéme Linux

Pokúsili ste sa niekedy zavrieť shell alebo odpojiť disk, aby ste dostali chybu, že sa používa jeden alebo viac súborov? Alebo ste sa možno pokúsili upraviť súbor, aby ste zistili, že je uzamknutý iným programom?





Možno sa obávate, že niekto nejakým spôsobom získal neoprávnený prístup k vášmu systému Linux. Pomocou nástroja s názvom lsof môžete vidieť, ktoré súbory sú otvorené, dokonca aj cez sieťové pripojenia.





VYUŽITIE VIDEA DŇA

Čo je lsof?

lsof je nástroj, ktorý zobrazuje zoznam otvorených súborov. Victor Abell ho pôvodne vyvinul na Purdue University. Je k dispozícii pre niekoľko implementácií Unixu, vrátane Linuxu. V súčasnosti je udržiavaná spoločnosťou tím lsof-org na GitHub .





Inštalácia lsof v systéme Linux

Je veľká šanca, že už máte vo svojom systéme nainštalovaný lsof. Skúste písať lsof na príkazovom riadku. Ak nie je, môžete ho nainštalovať prostredníctvom správcu balíkov vášho distribúcie.

V systéme Ubuntu alebo Debian napíšte:



sudo apt install lsof

Zapnuté Linuxové distribúcie založené na arche :

ako zobraziť správy z instagramu na počítači
sudo pacman -S lsof

A na RHEL, Rocky Linux a Oracle Linux:





sudo dnf install lsof

Prezeranie otvorených súborov v systéme Linux pomocou lsof

 lsof výstupu v termináli

Používanie lsof je jednoduché. Môžete ho jednoducho vyvolať na príkazovom riadku a zobraziť všetky otvorené súbory, ktoré vám patria:

lsof

lsof môže uviesť procesy patriace používateľovi root ako 'Povolenie odmietnuté.' Ak chcete zobraziť všetky súbory otvorené všetkými procesmi v celom systéme, spustite ho ako root:





sudo lsof

lsof zobrazí príkaz, PID, používateľa, ktorý ho vyvolal, deskriptor súboru, typ, zariadenie, veľkosť, uzol a absolútnu cestu k otvorenému súboru.

Ak sa pokúsite odpojiť jednotku, napríklad optickú jednotku, a zobrazí sa vám chyba, že súbory sa používajú, môžete zistiť, ktorý proces daný súbor používa, a potom ho ukončiť alebo zabiť.

 výstup lsof -i

Ak chcete zobraziť všetky aktuálne používané internetové zásuvky vo vašom systéme, použite -i možnosť:

spojte obrázky a vytvorte jeden
sudo lsof -i

Možný prienik môžete zistiť, ak si všimnete niečo podozrivé vo svojom systéme, ale sofistikovanejší útočníci môžu lepšie zakryť stopy.

The -r možnosť prepne lsof do režimu opakovania, kde bude zobrazovať výsledky po určitom intervale, kým nestlačíte Ctrl + C . Štandardne sa spúšťa každých 15 sekúnd, ale môžete to zmeniť. Môžete napríklad spustiť príkaz každých 10 sekúnd zadaním:

lsof -r 10

Rovnako ako pri iných nástrojoch Linuxu môžete tieto prepínače kombinovať. Predpokladajme, že chcete sledovať svoje internetové pripojenie každých päť sekúnd. Môžete to urobiť pomocou lsof zadaním:

lsof -i -r 5

Teraz môžete sledovať, ktoré procesy Linuxu majú otvorené súbory

Pomocou lsof môžete sledovať, ktoré procesy majú otvorené súbory, a opraviť všetky problémy, ktoré môžu spôsobiť.

Otvorené súbory sú len jedným aspektom procesov Linuxu. Existuje mnoho spôsobov, ako spravovať procesy v systéme Linux. Je ľahké spustiť, zastaviť a preskúmať procesy v systéme Linux, aby ste mohli zo svojho systému vyťažiť maximum.