Vil du se netværksbrugen for alle aktuelt aktive processer på din Linux-pc? Det er nemt med disse open source-værktøjer.

Internetadgang er afgørende, men du kan undre dig over, hvilke Linux-processer der bruger din forbindelse mest på din computer. Heldigvis, med nogle almindelige Linux-værktøjer, er det nemt at overvåge, hvilke processer der bruger din båndbredde. Her er nogle af dem:

1. nethogs

nethogs er et program der gør for internetforbindelser hvad htop eller top gør for CPU og hukommelsesbrug. Det viser dig et øjebliksbillede af, hvilke processer der får adgang til netværket.

Ligesom top, htop eller atop er nethogs et fuldskærmsprogram, der opdateres efter et par sekunder for at vise dig de aktuelle netværksforbindelser efter processer.

Installation af nethogs er enkelt. Du går bare igennem din pakkeadministrator.

For eksempel på Debian og Ubuntu:

sudo apt install nethogs

Og på Arch Linux:

sudo pacman -S nethogs

Om Red Hat-familien:

sudo dnf install nethogs

For at køre nethogs skal du være root:

sudo nethogs

Det er muligt at indstille det, så du kan køre nethogs som en almindelig bruger ved hjælp af denne kommando:

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

Du bør erstatte "/path/to/nethogs" med det absolutte stinavn for nethogs. Du kan finde dette med hvilken kommando:

which nethogs

2. lsof

Mens lsof er et værktøj til at vise åbne filer, kan den også vise åbne netværksforbindelser. Det -jeg option viser internetforbindelser knyttet til kørende processer på systemet. På Linux er alt trods alt en fil.

Brug denne kommando for at se aktuelle internetforbindelser:

lsof -i

lsof vil vise dig navnet på alle kommandoer med åbne internetforbindelser, PID, filen deskriptor, typen af ​​internetforbindelse, størrelsen, protokollen og det formelle filnavn på forbindelse.

Bruger -i4 og -i6 indstillinger giver dig mulighed for at se forbindelser ved hjælp af IPv4 eller IPv6.

Der er en god chance for, at du allerede har installeret. Det er også nemt at installere på større Linux-distros, hvis det ikke er det.

På Debian og Ubuntu skal du skrive:

sudo apt install lsof

Og på Arch:

sudo pacman -S lsof

Om Red Hat-familien af ​​distros:

sudo dnf install lsof

3. netstat

netstat er et kraftfuldt program i sig selv, der lader dig se netværksforbindelser på dit system. Den viser dig ikke, hvilke processer netværksforbindelserne er knyttet til. Som med lsof kan du se dette med en kommandolinjeindstilling.

netstat er en del af net-tools-pakken. Du kan installere det på de fleste Linux-distros ved hjælp af standardpakkehåndteringen.

For eksempel på Debian eller Ubuntu:

sudo apt install net-tools

På Arch Linux:

sudo pacman -S net-tools

For at installere netstat på Fedora, CentOS og RHEL, kør:

sudo dnf install net-tools

Du kan køre netstat på kommandolinjen. Som standard vil den vise dig information såsom protokollen, adressen og forbindelsens tilstand, men -s option tilføjer en kolonne, der viser proces-id'et og kommandonavnet.

netstat -p

Når du kører det, vil netstat bare liste alle netværksforbindelserne og derefter afslutte. Med -c mulighed, kan du se en løbende opdateret liste over forbindelser:

netstat -pc

Dette ville svare til at bruge et skærmorienteret program som nethogs, men fordelen ved at gøre det på denne måde er, at du kan overføre outputtet til et andet program som grep eller en personsøger for at undersøge det:

netstat -p | grep 'systemd'

For at se alle processer med netværksforbindelser på dit system, skal du muligvis køre netstat som root:

sudo netstat 

Nu kan du se, hvilke Linux-apps der sluger din båndbredde

Linux er, ligesom mange moderne operativsystemer, tæt forbundet til internettet. Det kan til tider være svært at spore, hvilke processer der bruger din båndbredde. Med værktøjer som nethogs, lsof og netstat kan du spore processer, der har åbne forbindelser.

Processer går nogle gange i spil, selv med forbindelser. På Linux kan du nemt afslutte alle useriøse processer.