Ydeevne

Overvåg Disk I / O med iotop i Linux

Overvåg Disk I / O med iotop i Linux
På Linux-servere har du mange processer, der kører, og hver af disse processer udfører nogle I / O-operationer. Så disse processer forbruger lagerdiskens båndbredde.

Vi kan bruge htop-kommandoen til at se en liste over alle kørende processer på vores Linux-server. Men hvad nu hvis vi vil overvåge, hvor meget diskbåndbredde hver af disse processer bruger? Vi kan bruge iotop.

iotop er et interaktivt I / O-overvågningsværktøj på Linux ligesom htop. Med iotop kan du nemt overvåge disklæsning og skrivning af båndbreddeforbrug for hver kørsel, der behandles på Linux.

I denne artikel vil jeg vise dig, hvordan du installerer iotop på populære Linux-distributioner, og hvordan du bruger iotop til at overvåge disklæsning og skrivning af båndbredde pr. Kørende proces. Jeg bruger Ubuntu 18.04 LTS til demonstrationen, men de samme kommandoer skal fungere på enhver moderne Linux-distribution. Så lad os komme i gang.

Installation af iotop på Ubuntu:

iotop er tilgængelig i Ubuntu's officielle pakkeopbevaring. Så du kan nemt downloade iotop ved hjælp af APT-pakkehåndteringen.

Opdater først APT-pakkeopbevaringscachen med følgende kommando:

$ sudo apt opdatering

Installer nu iotop med følgende kommando:

$ sudo apt installere iotop

iotop skal installeres.

Kontroller nu, om iotop arbejder med følgende kommando:

$ iotop - version

iotop fungerer som du kan se.

Installation af iotop på CentOS 7:

iotop er tilgængelig i CentOS 7's officielle pakkeopbevaring. Du kan nemt installere det med YUM-pakkehåndteringen som følger:

$ sudo yum installer iotop -y

Grundlæggende brug af iotop:

For at overvåge diskbrugen af ​​hver kørende proces med iotop skal du køre iotop som følger:

$ sudo iotop

Som du kan se, åbnes det interaktive iotop-vindue. Her kan du se, hvilken proces der bruger disken.

Som du kan se på skærmbilledet nedenfor vises den samlede diskhastighed / båndbredde øverst til venstre. På samme måde vises den samlede diskhastighed / båndbredde øverst til højre.

Som du kan se, viser iotop kolonner til,

I de fleste tilfælde svarer thread ID (TID) til Process ID (PID).

Visning af processer, der kun udfører I / O-handlinger:

Som standard viser iotop alle kørende processer, om de laver I / O-operationer eller ej. Så listen er meget lang. Det er sværere at finde de processer, vi har brug for, og overvåge dem.

Heldigvis lader iotop dig kun vise de processer, der udfører I / O-operationer. For at gøre det kan du bruge -o eller -kun mulighed for iotop.

For kun at vise de processer, der udfører I / O-operationer, skal du køre iotop som følger:

$ sudo iotop -o

Eller

$ sudo iotop - kun

Som du kan se, udfører processen med TID 1345 og 1957 I / O-operationer lige nu.

Dette er den kommando, jeg kører for at simulere I / O-operationer i denne artikel.

$ dd hvis = / dev / urandom af = iotest.img bs = 1M antal = 1000

BEMÆRK: Hvis du ikke har startet iotop med -o eller -kun , kan du stadig skifte til denne tilstand ved at trykke på o på tastaturet. Du kan skifte mellem disse 2 tilstande af iotop ved hjælp af o nøgle.

Viser samlet I / O-forbrug pr. Proces:

iotop giver dig også mulighed for at overvåge, hvor meget disk læser og disk skriver i alt, hver proces har gjort, efter at iotop også er startet. For at gøre det skal du bruge --en eller -akkumuleret mulighed. Du kan også bruge den med -o eller -kun mulighed også.

For eksempel,

$ sudo iotop -ao

Som du kan se, vises den samlede disklæsning og diskskrivning pr. Proces.

Viser PID i stedet for TID:

Som jeg har nævnt tidligere, er Thread ID (TID) det samme som Process ID (PID) det meste af tiden. Du kan bruge disse om hinanden. Men hvis du virkelig vil være sikker på, at du arbejder med nøjagtigt proces-ID (PID), så har iotop den -P eller -processer mulighed, som du kan bruge til at ændre standard TID-kolonnen til PID-kolonnen.

For at vise PID-kolonne i stedet for TID-kolonne skal du køre iotop som følger:

$ sudo iotop -P

Eller

$ sudo iotop - processer

Som du kan se, erstattes TID-kolonnen med PID-kolonnen.

Filtrering af iotop-processer:

Du kan filtrere iotop-processer baseret på proces-id (PID), tråd-id (TID) og den behandlede ejer (BRUGER).

Hvis du f.eks. Kun vil overvåge disk I / O for processerne med PID 2024 og 2035, vil du køre iotop som følger:

$ sudo iotop -P -p 2024 -p 2035

Som du kan se, overvåges kun processerne med PID 2024 og 2035.

Hvis du kun vil overvåge disk I / O for trådene med TID 2024 og 2035, kører du iotop som følger:

$ sudo iotop -P -p 2024 -p 2035

Lad os igen sige, at du vil overvåge disk I / O for de processer, der kører som brugeren shovon. For at gøre det skal du køre iotop som følger:

$ sudo iotop -P -u shovon

Som du kan se, er kun de processer, der kører som bruger shovon vises.

Hvis du vil overvåge flere brugere på én gang, kan du også gøre det.

For eksempel at overvåge disk I / O af alle de processer, som brugerne shovon og lilje kører, kør iotop som følger:

$ sudo iotop -P -u shovon -u lilje

Så det er dybest set, hvordan du bruger iotop til at overvåge disk I / O i Linux. Tak, fordi du læste denne artikel.

Installer nyeste Dolphin Emulator til Gamecube & Wii på Linux
Dolphin Emulator giver dig mulighed for at spille dine valgte Gamecube & Wii-spil på Linux Personal Computers (PC). Som en frit tilgængelig og open s...
Sådan bruges GameConqueror Cheat Engine i Linux
Artiklen dækker en vejledning om brug af GameConqueror-snydemotoren i Linux. Mange brugere, der spiller spil på Windows, bruger ofte "Cheat Engine" -a...
Bedste spilkonsolemulatorer til Linux
Denne artikel viser en liste over populære spilkonsolemuleringssoftware, der er tilgængelig til Linux. Emulation er et softwarekompatibilitetslag, der...