Příkaz Linux Vmstat

Prikaz Linux Vmstat



V této příručce si ukážeme různé způsoby použití příkazu „vmstat“ v Linuxu.

Předpoklady:

K provedení kroků, které jsou uvedeny v této příručce, potřebujete následující součásti:

Virtuální paměť v Linuxu

Fyzická paměť, také označovaná jako RAM, je omezená. Jádro je zodpovědné za distribuci tohoto prostoru všem spuštěným programům. Všechny spuštěné programy (včetně operačního systému) jsou umístěny v paměti RAM.







Pokud je však požadavek na paměť vyšší než její dostupná paměť, systém jednoduše spadne (nebo si program vyžádá více místa v paměti). Ve většině situací je to nechtěný výsledek. Zde přichází na řadu virtuální paměť.



Virtuální paměť označuje vyhrazený diskový prostor na vašem HDD/SSD, který může fungovat jako přídavná paměť v extrémních situacích. Protože se chová jako prostor RAM (ale ne ve skutečnosti), je považován za „virtuální“. V systémech UNIX/Linux se tyto prostory označují jako odkládací prostory.



Linuxové jádro přesune bloky paměti do odkládacího prostoru a podle potřeby je načte zpět do RAM.





Výkon virtuální paměti je rozhodně pomalejší než fyzická paměť a je přímo úměrný výkonu úložného zařízení. Ve specifických hardwarových konfiguracích (například pomocí NVMe SSD) však může být výkon ekvivalentní RAM.

Příkaz Vmstat

Příkaz „vmstat“ je monitorovací nástroj, který hlásí různé informace o virtuální paměti. Je k dispozici na všech systémech Linux jako součást balíčku „sysstat“.



Struktura příkazu „vmstat“ je následující:

$ vmstat < možnosti > < zpoždění > < počet >

Základní použití

Pokud je spuštěn bez jakéhokoli parametru, „vmstat“ vypíše systémové informace od posledního spuštění:

$ vmstat

Výstup je uspořádán do šesti segmentů:

  • procesy : Statistika procesů, které právě běží
    • r : Počet aktivních procesů
    • b : Počet spících procesů
  • Paměť : Statistika využití paměti
    • swpd : Celkové množství virtuální paměti (swap space)
    • volný, uvolnit : Dostupný odkládací prostor
    • fanoušek : Množství odkládacího prostoru používaného jako dočasná vyrovnávací paměť
    • mezipaměti : Celková vyrovnávací paměť
  • vyměnit : Statistiky o odkládacím prostoru
    • to jo : Míra výměny
    • tak : Míra výměny
  • tento : I/O statistika
    • s : Počet bloků přijatých z blokových zařízení
    • být : Počet bloků odeslaných blokovacím zařízením
  • Systém : Statistiky plánování
    • v : Počet přerušení systému
    • cs : Rychlost přepínání kontextu
  • procesor : Různé statistiky CPU
    • nás : CPU tráví čas nekernelovými procesy
    • a : CPU tráví čas procesy jádra
    • id : CPU tráví čas naprázdno
    • z : CPU tráví čas čekáním na dokončení I/O operací
    • Svatý : Čas procesoru používaný virtuálním strojem

Výměna zobrazovací jednotky

Ve výchozím nastavení „vmstat“ uvádí hodnoty paměti v kilobajtech. Chcete-li změnit jednotku, použijte „ -S “ vlajka:

$ vmstat -S < argument >

Zde „vmstat“ vypíše hodnoty v megabajtech.

K dispozici je několik paměťových jednotek:

  • M : 1048576 bajtů (2^20 bajtů)
  • m : 1000000 bajtů (1000 kilobajtů)
  • K : 1024 bajtů (1 megabajt)
  • k : 1000 bajtů (1 kilobajt)

Průběžná aktualizace statistik

Ve výchozím nastavení „vmstat“ vytiskne sestavu jednou. Můžeme však nařídit „vmstat“, aby poskytoval nepřetržité zprávy v zadaném časovém intervalu (v sekundách).

Struktura příkazu je následující:

$ vmstat < zpoždění >

Chcete-li například získat aktualizované statistiky každé 2 sekundy, příkaz je následující:

$ vmstat 2

Výstup se nezastaví, pokud není ručně ukončen pomocí „Ctrl + C“.

Případně můžeme zadat „vmstat“, abychom poskytli statistiky pro konkrétní počet opakování:

$ vmstat < zpoždění > < počet >

Chcete-li například získat aktualizované statistiky každé 2 sekundy po pětkrát, příkaz vypadá takto:

$ vmstat 2 5

Aktivní a neaktivní paměť

Aktivní paměť označuje paměťový prostor, který je aktuálně využíván procesem. Na druhou stranu neaktivní paměť odkazuje na paměťový prostor, který byl přiřazen procesu, který již neběží.

Pomocí „vmstat“ můžeme zkontrolovat množství používaných aktivních a neaktivních pamětí:

$ vmstat -A

Zde jsou sloupce „buff“ a „cache“ nahrazeny sloupci „neaktuální“ a „aktivní“.

Paměť a plánování

Chcete-li získat podrobnější zprávu o paměti a plánování, použijte následující příkaz:

$ vmstat -s

Tady:

  • Část 1: Tato část se zabývá základními informacemi o systému, jako je celková fyzická paměť, aktivní/neaktivní paměť, volná/vyrovnávací paměť/paměť mezipaměti atd.
  • Část 2: Různé statistiky CPU
    • Nepříjemné tikání CPU : Kolikrát procesy s vysokou prioritou využívaly CPU.
    • Pěkné tikání CPU : Počet, kolikrát procesy s nižší prioritou použily CPU.
    • Systémový CPU tiká : Počet, kolikrát procesy jádra použily CPU.
    • Nečinný CPU tiká : Kolikrát byl CPU nečinný.
    • IO-wait CPU tiká : Počet, kolikrát CPU čeká na správu I/O.
    • IRQ : Počet, kolikrát CPU přijal požadavky na přerušení.
    • softirq : Počet, kolikrát CPU přijal žádosti o softwarové přerušení.
    • ukradené CPU ticks : Kolikrát virtuální počítače ukradly čas CPU.
  • Část 3: Statistiky stránkování paměti
  • Část 4: Čítače událostí

Vidlice od Bootu

Forky odkazují na procesy, které byly vytvořeny existujícími procesy. Chcete-li získat statistiku počtu větví, spusťte následující příkaz:

$ vmstat -F

Statistika disků a diskových oddílů

Příkaz „vmstat“ může také poskytnout informace o aktivitě disku. Chcete-li získat rychlý přehled o aktivitě disku, spusťte následující příkaz:

$ vmstat -D

Chcete-li získat podrobnější zprávu o aktivitě disku (včetně statistik čtení/zápisu), použijte místo toho následující příkaz:

$ vmstat -d

Tady:

  • Čte
    • celkový : Celkový počet přečtení disku
    • sloučeny : Celkový počet čtení skupiny
    • sektory : Celkový počet přečtených sektorů
    • slečna : Celková doba načtení dat z disku (v milisekundách)
  • Píše
    • celkový : Celkový počet zápisů na disk
    • sloučeny : Celkový počet skupinových zápisů
    • sektory : Celkový počet zapsaných sektorů
    • slečna : Celková doba zápisu na disk (v milisekundách)
  • IO
    • dát : Celkový počet aktuálních čtení/zápisů na disk
    • sek : Množství času stráveného probíhající operací čtení/zápisu (v sekundách)

Příkaz „vmstat“ může také generovat zprávy pro konkrétní diskový oddíl. Chcete-li získat sestavu oddílu, použijte následující strukturu příkazů:

$ vmstat -p < oddíl_identifikátor >

Statistika desky

Přidělování desek je navrženo jako účinný mechanismus pro přidělování paměti objektům. Ve srovnání s předchozími mechanismy nabízí slab alokace snížení fragmentace paměti (způsobené alokací a dealokací paměti).

Chcete-li zkontrolovat statistiku slab systému, použijte následující příkaz „vmstat“:

$ sudo vmstat -m

Všimněte si, že k zobrazení statistik vyžaduje oprávnění root.

Tady:

  • Mezipaměti : Název dat uložených v mezipaměti
  • na jednom : Počet objektů, které jsou aktivní v Num cache
  • Celkový : Celkový počet objektů v konkrétní mezipaměti
  • Velikost : Velikost objektů uložených v mezipaměti
  • Stránky : Počet stránek paměti, které obsahují objekty uložené v mezipaměti

Závěr

V této příručce jsme si ukázali různé způsoby použití příkazu „vmstat“. Kromě virtuální paměti může „vmstat“ hlásit také statistiky disku, rozvětvení, slaby a další.

Máte zájem dozvědět se o dalších nástrojích pro monitorování systému? Dozvědět se víc o htop , zabít , ps , atd.

Hodně štěstí při práci s počítačem!