GNU/Linux >> Znalost Linux >  >> Linux

Jak zkontrolovat celkovou velikost RAM a využití paměti v Linuxu

Existuje mnoho příkazů, které lze použít k identifikaci celkové velikosti instalované paměti RAM a ke kontrole množství volné a použité paměti v operačním systému Linux, jako je Red Hat Enterprise Linux (RHEL), CentOS, Ubuntu atd.

Paměť je jedním z kritických zdrojů pro počítač, zvláště pro server, protože dostatek paměti zajišťuje, že aplikacím lze přidělit paměť, kterou potřebují k provedení operace před odložením na disk, což je mnohem pomalejší, což zpomaluje dobu odezvy.

Protože GUI není vždy dostupné, zejména pro uživatele Linuxu, kteří často používají SSH nebo Telnet ke vzdálenému systému, tento tutoriál se zaměřuje na možnosti příkazového řádku, aby zjistil využití paměti a stav v Linuxu, což zahrnuje RAM a swap.

1. free Command

příkaz free zobrazí celkové množství volné a použité fyzické a odkládací paměti v systému a také vyrovnávací paměti a mezipaměti používané jádrem. Informace se shromažďují analýzou /proc/meminfo. Zobrazené informace jsou:

  • total:Celková nainstalovaná paměť (MemTotal a SwapTotal v /proc/meminfo)
  • použitá:Použitá paměť (vypočtená jako celková – volná – vyrovnávací paměti – mezipaměť)
  • volné:Nevyužitá paměť (MemFree a SwapFree v /proc/meminfo)
  • sdíleno:Paměť využívaná (většinou) tmpfs (Shmem v /proc/meminfo, k dispozici v jádrech 2.6.32, zobrazeno jako nula, pokud není dostupné)
  • vyrovnávací paměti:Paměť používaná vyrovnávací paměti jádra (vyrovnávací paměti v /proc/meminfo)
  • mezipaměť:Paměť využívaná mezipamětí stránky a slaby (Cached a Slab v /proc/meminfo)
  • buff/cache:Součet vyrovnávacích pamětí a mezipaměti
  • dostupné:Odhad, kolik paměti je k dispozici pro spouštění nových aplikací bez výměny. Na rozdíl od dat poskytovaných mezipamětí nebo volnými poli, toto pole bere v úvahu mezipaměť stránek a také to, že ne všechny obnovitelné paměťové slaby budou získány zpět kvůli používání položek (MemAvailable v /proc/meminfo, dostupné v jádrech 3.14, emulované na jádra 2.6.27+, jinak stejné jako zdarma)

Příklad výstupu:

              total        used        free      shared  buff/cache   available
Mem:       24512912      253112    23761468       41484      498332    23873560
Swap:      12387324           0    12387324
TipVýchozí možnost zobrazuje paměť v KB (kilobajtech). Pro zobrazení v MB (megabajtech) použijte „free -m“.

2. Příkaz vmstat

vmstat hlásí informace o procesech, paměti, stránkování, blokových IO, pastech, discích a aktivitě procesoru. Ve výchozím nastavení se zobrazují následující informace:

Proces
r:Počet spustitelných procesů (běžících nebo čekajících na dobu běhu).
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.
cache:množství paměti použité jako mezipaměť.
inact:množství neaktivní paměti. (-možnost)
aktivní:množství aktivní paměti. (-možnost)

Vyměnit
si:Množství paměti odložené z disku (/s).
takže:Množství paměti odložené na disk (/s).

IO
bi:Bloky přijaté z blokového zařízení (bloky/bloky).
bo:Bloky odeslané na blokové zařízení (bloky/s).

Systém
in:Počet přerušení za sekundu, včetně hodin.
cs:Počet přepnutí kontextu za sekundu.

CPU
Toto jsou procenta celkového času CPU.
us:Čas strávený spouštěním nekernelového kódu. (uživatelský čas, 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é.

Ukázkový výstup:

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 23760168  62096 438828    0    0     0     0    4    4  0  0 100  0  0

3. top příkaz

příkaz top se používá hlavně k zobrazení dynamického pohledu na běžící systém v reálném čase, zejména na linuxové procesy nebo vlákna, které jsou aktuálně spravovány linuxovým jádrem. Zobrazuje však také souhrnné informace o systému, včetně paměti RAM a volné a využité velikosti swapu.

Chcete-li ukončit hlavní program, stiskněte Ctrl + c , nebo jen q .
Příklad výstupu:

top - 09:55:34 up 20:23,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 188 total,   2 running, 186 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni, 99.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 24512912 total, 23758072 free,   252420 used,   502420 buff/cache
KiB Swap: 12387324 total, 12387324 free,        0 used. 23873892 avail Mem

4. /proc/meminfo

Jak můžete vidět z příkazů výše, většina nástrojů spoléhá na /proc/meminfo, aby hlásily množství volné a použité paměti a odkládacího prostoru v systému. /proc/meminfo je virtuální soubor, který obsahuje dynamické statistiky o využití paměti jádrem a systémem.

Chcete-li zobrazit obsah /proc/meminfo, použijte kterýkoli z následujících příkazů a jakýkoli jiný, který preferujete:

cat /proc/meminfo
more /proc/meminfo
less /proc/meminfo

5. nahoře Command

atop je interaktivní monitor pro zobrazení zátěže v systému Linux, který je podobný top. Ukazuje obsazení nejkritičtějších hardwarových zdrojů (z hlediska výkonu) na systémové úrovni, tj. CPU, paměť, disk a síť. atop není ve výchozím nastavení na většině distribucí Linuxu nainstalován, takže pokud jej chcete používat, musíte jej nainstalovat ručně.

6. příkaz htop

htop je interaktivní prohlížeč procesů pro unixové systémy, který je podobný top, ale poskytuje podrobnější informace. Je to aplikace v textovém režimu (pro konzole nebo X terminály) a vyžaduje ncurses. htop není ve výchozím nastavení na většině distribucí Linuxu nainstalován, takže pokud jej chcete používat, musíte htop nainstalovat ručně.

Informace o fyzické paměti RAM

Pokud se chcete dozvědět více o fyzických modulech RAM DIMM nainstalovaných v systému, použijte dmidecode (DMI Table Decoder), nástroj pro ukládání obsahu tabulky DMI (nebo SMBIOS) počítače do formátu čitelného člověkem. Tato tabulka obsahuje popis hardwarových součástí systému a také další užitečné informace, jako jsou sériová čísla a revize systému BIOS.

Chcete-li použít dmidecode k zobrazení fyzických modulů RAM, použijte jeden z následujících příkazů:

$sudo dmidecode --type memory
$ sudo dmidecode -t 17

Ukázkový výstup:

# dmidecode 3.0
Scanning /dev/mem for entry point.
SMBIOS 2.6 present.

Handle 0x001C, DMI type 17, 28 bytes
Memory Device
        Array Handle: 0x001A
        Error Information Handle: Not Provided
        Total Width: 72 bits
        Data Width: 64 bits
        Size: 4096 MB
        Form Factor: DIMM
        Set: None
        Locator: CPU0
        Bank Locator: DIMM01
        Type: Other
        Type Detail: Other
        Speed: 1066 MHz
        Manufacturer: Samsung
        Serial Number: 88XX8X88
        Asset Tag: AssetTagNum01
        Part Number: M888MXXXXMM8-MM8
        Rank: Unknown

Linux
  1. Jak zkontrolovat velikost haldy pro proces v Linuxu

  2. Jak zjistit využití uživatelské paměti v linuxu

  3. Jak se v Linuxu hlásí využití paměti?

  1. Využití paměti Linuxu

  2. Jak zkontrolovat využití paměti na serveru se systémem Linux

  3. Jak vypočítat využití paměti v Linuxu pomocí sar, ps a zdarma

  1. Jak zkontrolovat využití paměti procesu pomocí příkazu Linux pmap

  2. Jak zkontrolovat velikost RAM v příkazovém řádku Linuxu v GB

  3. jak zkontrolovat velikost haldy přidělenou pro jvm linuxem