Како пратити употребу мреже за процесе на Линуку

Pristup internetu je postao neizostavan deo svakodnevice, ali se često postavlja pitanje koji to procesi na vašem Linux sistemu najviše opterećuju vašu internet vezu. Srećom, uz pomoć nekoliko standardnih Linux alata, lako možete pratiti koji procesi troše najviše vašeg protoka.

Pogledajte neke od tih alata:

MUO VIDEO DANA

POMERITE DA BISTE NASTAVILI SA SADRŽAJEM

1. Nethogs

Nethogs je program koji za internet konekcije radi ono što htop ili top rade za CPU i memoriju. On vam pruža uvid u trenutne procese koji pristupaju mreži.

Kao i top, htop ili atop, Nethogs je interaktivni program koji osvežava prikaz svakih nekoliko sekundi, pokazujući vam aktivne mrežne veze po procesima.

Instalacija Nethogs-a je vrlo jednostavna, a možete je izvršiti putem vašeg upravitelja paketa.

Na primer, na Debian i Ubuntu sistemima:

 sudo apt install nethogs 

Na Arch Linux-u:

 sudo pacman -S nethogs 

Za Red Hat familiju distribucija:

 sudo dnf install nethogs 

Za pokretanje Nethogs-a, potrebne su vam root privilegije:

 sudo nethogs 

Moguće je podesiti Nethogs tako da ga možete pokretati i kao običan korisnik, pomoću sledeće komande:

 sudo setcap "cap_net_admin,cap_net_raw+pe" /path/to/nethogs 

Potrebno je zameniti „/path/to/nethogs“ sa tačnom putanjom do izvršne datoteke Nethogs-a. Možete je pronaći koristeći naredbu which:

 which nethogs 

2. lsof

Iako je lsof prvenstveno alat za listanje otvorenih datoteka, on takođe može prikazati i otvorene mrežne konekcije. Opcija -i prikazuje internet veze koje su povezane sa aktivnim procesima na vašem sistemu. Uostalom, u Linux-u, sve se smatra datotekom.

Da biste videli aktivne internet veze, koristite ovu naredbu:

 lsof -i 

lsof će vam prikazati ime komande koja ima otvorene internet konekcije, PID (ID procesa), deskriptor datoteke, tip internet veze, veličinu, protokol i formalno ime datoteke koja predstavlja vezu.

Korišćenjem opcija -i4 i -i6 možete specificirati da želite videti samo veze koje koriste IPv4 ili IPv6.

Postoji velika verovatnoća da već imate instaliran lsof na svom sistemu. U slučaju da nije, lako ga je instalirati na većini glavnih Linux distribucija.

Na Debian i Ubuntu, koristite:

 sudo apt install lsof 

A na Arch Linux-u:

 sudo pacman -S lsof 

Za distribucije iz Red Hat familije:

 sudo dnf install lsof 

3. netstat

netstat je sam po sebi moćan alat koji vam omogućava da pregledate mrežne veze na vašem sistemu. Sam po sebi ne prikazuje koji procesi su povezani sa tim vezama. Međutim, kao i kod lsof, i ovde možete to postići korišćenjem određenih opcija.

netstat je deo paketa net-tools. Možete ga instalirati na većini Linux distribucija koristeći standardni upravitelj paketa.

Na primer, na Debian-u ili Ubuntu-u:

 sudo apt install net-tools

Na Arch Linux-u:

 sudo pacman -S net-tools 

Za instalaciju netstat-a na Fedora, CentOS i RHEL, koristite:

 sudo dnf install net-tools 

netstat možete pokrenuti sa komandne linije. U osnovnom obliku, prikazivaće vam informacije kao što su protokol, adresa i status veze, ali sa opcijom -p dodaje se kolona koja prikazuje ID procesa i ime komande.

 netstat -p 

Kada ga pokrenete ovako, netstat će jednostavno izlistati sve mrežne veze i završiti. Sa opcijom -c možete videti listu veza koja se konstantno osvežava:

 netstat -pc 

Ovo je slično korišćenju programa kao što je Nethogs, ali prednost ovakvog načina rada je što možete proslediti izlaz u drugi program, kao što su grep ili pager, radi detaljnije analize:

 netstat -p | grep 'systemd' 

Da biste videli sve procese sa mrežnim vezama na vašem sistemu, možda ćete morati da pokrenete netstat kao root:

 sudo netstat  

Sada možete videti koje Linux aplikacije troše vaš protok

Linux, kao i mnogi savremeni operativni sistemi, duboko je integrisan sa internetom. Ponekad može biti izazovno otkriti koji to procesi troše vaš protok. Uz pomoć alata kao što su Nethogs, lsof i netstat, možete pratiti procese koji imaju otvorene mrežne veze.

Procesi ponekad mogu krenuti „naopako“, čak i kada su u pitanju veze. Na Linux-u, imate mogućnost da lako prekinete neželjene procese.