Pokud jde o systémové statistiky v Linuxu, existuje mnoho příkazů, nástrojů a variací obou, které můžete použít. Pokud však potřebujete specifika virtuální paměti, můžete použít vmstat
.
Co to je?
Reportér statistik virtuální paměti, také známý jako vmstat
, je nástroj příkazového řádku Linuxu, který hlásí různé bity systémových informací. Věci jako paměť, stránkování, procesy, IO, CPU a plánování disku jsou všechny zahrnuty v poli poskytovaných informací.
Když spustíte vmstat
, mějte na paměti, že první zpráva je průměrem požadovaných informací od doby posledního restartu. Následné přehledy používají měření zpoždění a počet . Těmi se konkrétně zabývám během diskuse o syntaxi.
Syntaxe příkazu
Syntaxe vmstat
příkaz je poměrně jednoduchý:
$ vmstat [možnosti][zpoždění [počet]]
- Možnosti – jsou podrobně popsány v následující části.
- Zpoždění – definuje časový interval mezi aktualizacemi. Není-li zadána žádná prodleva, zpráva se spustí jako průměr od posledního restartu.
- Počet – definuje počet aktualizací vytištěných po daném intervalu zpoždění. Pokud není nastaven žádný počet, výchozí hodnota je nekonečný počet aktualizací každých x sekund (kde x =zpoždění).
Základní výstup a jak mu dát smysl
Nejzákladnější forma tohoto příkazu nepoužívá vůbec žádné volby. Zde je standardní výstup a jak jej číst:
[tcarrigan@rhel ~]$ vmstatprocs -----------paměť---------- ---swap-- -----io-- -- -system-- ------cpu----- r b swpd zdarma buff mezipaměť si tak bi bo v cs us sy id wa st 1 0 0 2 5 2 5 0 7 7 7 7 0 7 7 212 1 0
Vidíte informace o procesech, paměti, swapu, IO, systému a CPU. Manuálová stránka příkazu uvádí následující (man vmstat
):
- Process - r:Počet spustitelných procesů (běžících nebo čekajících na běhy) - b:Počet procesů v nepřerušitelném spánku. - Paměť - swpd:množství použité virtuální paměti. - volné:množství nečinné paměti - buff:množství paměti použité jako vyrovnávací paměti - mezipaměť:množství paměti použité jako mezipaměť. - neaktivní:množství neaktivní paměti. (-a option) - aktivní:množství aktivní paměti. (-a option) - Swap - si:Množství paměti odložené z disku (/s). - tak:Množství paměti swapované na blokové zařízení (/s). - IO - bi:Bloky přijaté z blokového zařízení (bloky/bloky). - bo:Bloky odeslané na blokové zařízení (bloky/bloky). - System - in:Počet přerušení za sekundu, včetně hodin. - cs:Počet přepínačů kontextu za sekundu. – CPU – Toto jsou procenta celkového času CPU. - us:Čas strávený spouštěním nekernelového kódu. (čas uživatele, včetně příjemného času) - sy:Čas strávený spouštěním kódu jádra. (systémový čas) - id:Čas strávený nečinností. Před Linuxem 2.5.41 to zahrnuje dobu čekání IO. - wa:Čas strávený čekáním na IO. Před Linuxem 2.5.41, součástí idle. - st:Čas ukradený z virtuálního stroje. Před Linuxem 2.6.11, neznámé.
Mezi důležité informace zde najdete množství volné paměti v systému a také množství swapovací aktivity, kterou aktuálně zažíváte.
Možnosti vědět
-a
volba nám poskytne aktivní a neaktivní paměť systému:
[tcarrigan@rhel ~]$ vmstat -aprocs -----------memory---------- ---swap-- -----io ---- -system-- ------cpu----- r b swpd zdarma neaktivní aktivní si tak bi bo in cs us sy id wa st 0 0 0 1 0 9 0 0 0 0 6022104 60965 1 98 0 0
-f
volba nám dá počet vidlic od spuštění:
[tcarrigan@rhel ~]$ vmstat -f 2911 vidlice
Všimněte si, že fork je jakýkoli proces, který vytváří další procesy a přitom zůstává aktivní.
-s
zobrazí různé statistiky paměti a také čítače událostí CPU a IO:
[tcarrigan@rhel ~] $ vmstat -s 8161656 k Celková paměť 1216012 k Použitá paměť 1186276 K Aktivní paměť 609632 K Neaktivní paměť 6021980 K Zdarma paměť 2120 K paměť 92154 k 3145724 K Celková swap 0 K použitý swap 3145724 k zdarma swap 5888 non-tice uživatelský procesor CPU Klíšťata 476 Pěkný uživatelský procesor Klíšťata 1520 Systémová procesor Klíšťata 529965 Idle CPU Klínění 331 IO-Wait CPU CPU TICKS TICKS TICKS TICKS TICKS TICKS TICKS V CPU TĚSNĚ odstráneno 0 stránek vyměněno 0 stránek vyměněno 365026 přerušení 374126 přepnutí kontextu CPU 1590618807 doba spouštění 2 ks 29
-d
Tato možnost vám poskytuje statistiky čtení/zápisu pro různé disky:
[tcarrigan@rhel ~]$ vmstat -ddisk- ------------reads------------ -------- ---- Zápisy ----------- ----- io ------ celkové sloučené sektory MS Celkem sloučené sektory MS CUR SECSDA 17019 40 1498524 10680 4683 1050 335510 1561 0 10SDB 105 0 6232 67 0 0 0 0 0 0 0SDC 105 0 6232 59 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-t
Tato možnost nám poskytuje informace o časovém razítku při každé aktualizaci, viz zde:
[tcarrigan@rhel ~]$ vmstat -t 5 10procs -----------paměť---------- ---swap-- ---- -io---- -system-- ------cpu----- -----timestamp----- r b swpd zdarma buff mezipaměť si tak bi bo in cs us sy id wa st EDT 1 0 0 6021412 2120 921548 0 0 118 26 62 66 1 0 99 0 2020-05-27 19:00:11 0 0 0 0 6021300 2120 921548 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2020-05-27 19:00:16 0 0 0 0 0 6021272 2120 921548 0 0 0 2 196 294 0 0 0 0 2020-05-27 19:00:21 0 0 0 0 6021272 2120 921548 0 0 0 0 110 161 0 0 100 0 0 2020 -05-27 19:00:26 0 0 0 6021272 2120 921548 0 0 0 0 0 112 169 0 0 100 0 0 2020-05-27 19:00:31 0 0 0 6021272 2120 921548 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 99 0 0 2020-05-27 19:00:36 0 0 0 6021188 2120 921552 0 0 0 201 291 0 0 99 0 0 2020-05-27 19:00:41 0 0 0 0 6021188 2120 921552 0 0 0 0 152 233 0 0 100 0 0 0 2020-05-27 19:00:46 2 0 0 6021188 2120 921552 0 0 0 3 127 165 0 0 100 0 0 2020-05-27 19:00:51 0 0 0 6021188 2120 921552 0 0 0 0 95 131 0 0 100 0 0 2020-05-27 19:00:56
Vidíte, že existuje 10 aktualizací, vytištěných každých pět sekund, s připojenými informacemi o časovém razítku.
Upozorňujeme také, že všechny statistiky paměti jsou standardně zobrazeny v kilobajtech.
Shrnutí
Na závěr se podívejme, co jsme se naučili. vmstat
command je výkonný nástroj pro systémové statistiky, který lze použít s možnostmi nebo bez nich. Aktualizace tiskne pomocí dvou hlavních proměnných (zpoždění a počet) a příkaz a výstup můžeme přizpůsobit našim potřebám. Doufám, že se vám tento pohled na vmstat
líbil příkaz. Budu se zabývat ifstat
v připravovaném článku, tak si na to dejte pozor!
[ Bezplatný online kurz:Technický přehled Red Hat Enterprise Linux. ]
Linux