Dette indlæg indeholder en detaljeret oversigt over vmstat-kommandoen, dens syntaks, muligheder og praktiske applikationer.
vmstat kommando
Kommandoen vmstat fungerer som et potent ydelsesovervågningsværktøj i Linux, der tilbyder information om hukommelsesbrug, systemprocesser, blok-IO, personsøgning, diskaktiviteter og CPU-planlægning. Brugere kan angive en prøveperiode for at registrere aktivitet i realtid, hvilket gør det til et vigtigt værktøj til ydeevne og diagnosticering af mulige problemer.
Installation (hvis ikke forudinstalleret)
Før du bruger vmstat, skal du sikre dig, at sysstat pakken er installeret i Linux-miljøet. Sørg for at bruge den passende pakkehåndtering baseret på Linux-distribution:
Hvordan installeres kommandoen 'sysstat' i Ubuntu/Debian?
For at installere kommandoen 'sysstat' på Ubuntu eller Debian-baserede operativsystemer skal du udføre kommandoen skrevet nedenfor:
sudo passende installere sysstat
Hvordan installeres 'sysstat' kommandoen i Fedora/CentOS/RHEL?
For at installere kommandoen 'sysstat' på Fedora/CentOS eller RHEL-baserede operativsystemer, skal du udføre kommandoen skrevet nedenfor:
sudo yum installer sysstat
Hvordan installeres 'sysstat' kommandoen i Arch Linux?
For at installere kommandoen 'sysstat' på et Arch Linux-baseret operativsystem, skal du udføre kommandoen skrevet nedenfor:
sudo pacman -S sysstat
Når det er installeret i dit ønskede operativsystem, lad os springe ind i dets brug og forståelse.
Syntaks
Grundsyntaksen for vmstat-kommandoen er som følger:
vmstat [ muligheder ] [ forsinke [ tælle ] ]I ovenstående vmstat kommandosyntaks:
Muligheder: flag, der bruges til tilpasset output
Forsinke: Dette er varigheden mellem to opdateringer/rapporter. Hvis der ikke er angivet en forsinkelsesværdi, vil der kun blive udskrevet én prøveperioderapport med middelværdi siden opstart.
Tælle: Dette nævner antallet af nødvendige opdateringer/rapporter efter den angivne forsinkelsesværdi. Hvis forsinkelsen er angivet, og tællingen ikke er til stede, har tællingen en uendelig værdi som standard.
Okay, vi vil dykke dybt ned i forståelsen og brugen af muligheder, der er tilgængelige ved vmstat-kommandoen. Vi vil også diskutere, hvordan brugen af forsinkelse og tæller kan hjælpe os med at få de ønskede resultater.
Lad os dog først begynde med at forstå det grundlæggende output af kommandoen 'vmstat'.
Grundlæggende forståelse af vmstat Command
Lad os køre vmstat-kommandoen uden nogen mulighed og forsinke og analysere resultaterne.
vmstat
Alle sektioner, felter og værdier er forklaret nedenfor:
processer: Processtatistik
r: Løbende/aktive processer
b: Blokerede/dvaleprocesser venter på I/O-handlinger
hukommelse: Hukommelsesstatistik (i KB)
swpd: Brugt virtuel hukommelse
gratis: Fri hukommelse
buff: Buffer hukommelse
cache: Cache hukommelse
bytte rundt: Swap space statistik (i KB/s)
Ja: Hukommelse bytter ind
så: Hukommelsen skifter ud
det her: I/O-statistik (i blokke/sek.)
med en: Blokke modtaget
være: Blokke sendt
system: Planlægningsstatistik (per sekund)
i: Systemet afbryder
cs: Kontekstskifter
cpu: CPU-tid (i procenter)
os: Tid brugt på brugerkode
og: Tid brugt på system/kernel kode
id: Spildtid
af: Tid brugt på at vente på I/O
st: Tid stjålet af virtualiserede miljøer
Den bedste kilde til at forstå outputtet af vmstat kommandoen er man-siden for vmstat, som giver detaljerede og kortfattede oplysninger om det viste output.
For flere detaljer vedr vmstat kommando, udfør kommandoen:
mand vmstatDen viser en brugervejledning til vmstat kommando.
For eksempel at vide om beskrivelsen af den ovenfor udførte kommando; læs det følgende afsnit af man-siden.
Okay, lad os nu dykke dybt ned i forståelsen af de tilgængelige muligheder og få et indblik i outputtet af hver mulighed.
Indstillinger for vmstat Command
Der er forskellige muligheder for at hente forskellige typer statistik. Nogle af de meget brugte muligheder er forklaret nedenfor med en demonstration.
Hukommelse og processtatistik
Følgende er de kommandoer, der er kategoriseret og brugt til at få hukommelse og processtatistik.
Hvordan viser man aktiv og inaktiv hukommelse ved hjælp af vmstat?
For at få hukommelsesstatistik i form af aktiv og inaktiv brug (i stedet for buffer- og cachebrug), bruges '-a'-indstillingen.
vmstat -en
Hvordan viser man antallet af gafler ved hjælp af vmstat?
For at få antallet af gafler i bytes, bruges '-f' muligheden.
vmstat -fHvordan viser man pladestatistik ved hjælp af vmstat?
For at vise pladestatistik bruges '-m' muligheden.
sudo vmstat -m
Efter at have kørt dette program vil der være fem kolonner:
- Cache : navn på cachelagret datafil.
- på en : det aktive objektnummer i cachen.
- Total : Alle objekter i cachen.
- Størrelse : Den plads, der tages af hvert objekt i cachen.
- sider : antallet af hukommelsessider, der indeholder et gemt element.
Hvordan viser man headeren ved hjælp af vmstat?
For kun at vise overskriften én gang, bruges '-n' muligheden.
vmstat -n
Det er tydeligt i ovenstående kommandooutput, at der er tilføjet en overskrift øverst til kolonnerne, som inkluderer procs, hukommelse, swap, io, system og CPU.
Hvordan viser man en tabel med flere hændelsestællere ved hjælp af vmstat?
Til CPU-planlægning og hukommelsesstatistik skal du bruge '-s'-indstillingen:
vmstat -s
Outputtet er det samme som den grundlæggende vmstat-kommando bortset fra den delte pæne og ikke-pæne CPU-tid.
Ovenstående rapport kan opdeles i fire sektioner:
1. Hukommelsesbrug
- Samlet tilgængelig hukommelse.
- Hukommelse i brug i øjeblikket.
- Aktiv hukommelse
- Inaktiv hukommelse
- Fri hukommelse.
- Buffer hukommelse
- Cache hukommelse
- Skift hukommelsesoplysninger.
2. CPU-statistik:
- Brug til højprioriterede processer (ikke-pæne CPU-tikker)
- Brug til processer med lav prioritet (pæne CPU-mærker)
- Anvendelse til kerneprocesser (System CPU-mærker)
- Inaktiv CPU-tid (tomgangs-CPU tikker.
- CPU-brug til input/output-operationer (IO-vent)
- Afbrydelser modtaget af CPU'en (IRQ)
- Softwareafbrydelser (softirq)
- CPU-tid stjålet af en virtuel maskine (stjålne CPU-mærker)
3. Hukommelsessøgning
- Indbragte sider.
- Sider sendt ud til virtuel hukommelse.
- Sider læst fra swap-hukommelse.
- Sider skrevet.
4. Hændelsestællere
- Afbrydelser siden opstartstid
- Antal udførte kontekstskift.
- Tidsstempel for sidste opstartstidspunkt.
- Samlet antal gafler.
Hvordan viser man diskstatistik ved hjælp af vmstat?
For at vise diskstatistik bruges '-d' muligheden.
vmstat -d
Forklaringerne til hver sektion/kolonne er som følger:
1. Læser
- Total: Den tid, det tager at læse fra disken
- Sammenlagt: Antallet af læsninger grupperet
- Sektorer: Det samlede antal sektorer, hvorfra data er læst
- Millisekunder: Målehastigheden for datalæsningsprocessen
2. Skriver
- Total: Det samlede antal gange, information er blevet skrevet til disken
- Sammenlagt: Antallet af skrivninger grupperet
- Sektorer. Det samlede antal sektorer, som dataene er skrevet på
- Millisekunder: Målehastigheden for dataskrivningsprocessen
3. IO (Input/Output)
- Aktuel: Antallet af læsninger eller skrivninger, der i øjeblikket behandles.
- Sekunder: Den tid, der bruges på enhver behandlingslæsning eller -skrivning målt i sekunder.
Sekundære muligheder
Følgende er de muligheder, der er kategoriseret som sekundære muligheder og bruges til at hente forskellige typer detaljer relateret til virtuel hukommelse.
Hvordan får man diskaktivitetsrapport ved hjælp af vmstat?
For at få en detaljeret diskaktivitetsrapport bruges '-D' muligheden.
vmstat -D
Hvordan får man partitionsstatistik ved hjælp af vmstat?
For at få detaljeret partitionsstatistik bruges '-p' muligheden.
vmstat -s sda1Denne kommando kører kun med en ekstra parameter, hvor den skal bruge navnet på den partition, som vi ønsker at kende statistikkerne for.
Hvordan tilføjer man et tidsstempel til vmstat-rapporten?
For at tilføje et tidsstempel til rapporten, bruges '-t' muligheden.
vmstat -t
Hvordan viser man versionsoplysninger ved hjælp af vmstat?
For at vise versionsoplysninger bruges '-V'-indstillingen.
vmstat -I
Hvordan viser man hjælpen fra vmstat-kommandoen?
For at vise alle de tilgængelige muligheder i hjælpemenuen til vmstat-kommandoen, bruges '-h'-indstillingen.
vmstat -h
Efter at have opdaget alle de tilgængelige muligheder i vmstat, er det tid til at udforske forsinkelsen og tælleværdierne i vmstat-kommandoen.
Hvordan indstilles en forsinkelsesværdi mellem vmstat-rapportopdateringen?
For at indstille en forsinkelsesværdi mellem hver outputopdatering skal du blot angive forsinkelsesværdien i sekunder efter 'vmstat'-kommandoen som vist nedenfor:
vmstat [ forsinkelsesværdi ]
I ovenstående skærmbillede bliver rapporten opdateret hvert 2. sekund. Den vil fortsætte med at generere rapporter hvert 2. sekund, indtil den stoppes manuelt med CTRL+C. Men kommandoen 'vmstat' vises kun på output (gennemsnit siden genstart), hvis der ikke er angivet nogen forsinkelsesværdi.
Hvordan bruger man en tælleværdi med forsinkelse i vmstat-kommandoen?
For at stoppe rapportgenereringen efter et vist antal rapporter skal du nævne tælleværdien efter forsinkelsesværdien, som vist nedenfor:
vmstat [ forsinke ] [ tælle ]
Udgangen vises kun 3 gange som nævnt.
Hvordan ændres enheder af output i vmstat-kommandoen?
Standardenhederne, der vises i outputtet, er i KB'er. Vi kan også ændre det ved yderligere at nævne enhederne efterfulgt af '-S'-indstillingen.
For at nævne enhederne, følg vilkårene:
k: 1000 bytes (decimalbytes)
K: 1024 bytes (hexadecimale bytes)
m: 1000 KBs (decimalbytes)
M: 1024 KBs (hexadecimale bytes)
For at vise output i megabyte skal du udføre kommandoen:
vmstat 3 4 -S M
Udgangen vises 4 gange med en forsinkelse på 3 sekunder i megabyte.
Dette er alt fra vmstat-kommandoen og dens mulighed. Denne artikel har givet et detaljeret overblik over vmstat-kommandoen i Linux.
Konklusion
Kommandoen vmstat bruges til at give realtidsindsigt i forskellige systemparametre, hvilket gør den til en vital ressource til systemfejlfinding og optimering. Brugere kan bruge vmstats funktioner til at sikre maksimal effektivitet i Linux-miljøet ved at forstå syntaks, grundlæggende operationer og praktiske applikationer.