Ako môžem monitorovať využitie pamäte?

Použil som top, aby som videl aktuálne využitie pamäte. Chcel by som však sledovať využitie pamäte za určité obdobie. Napr. spustiť monitorovanie a potom vykonať niekoľko príkazov a nakoniec monitorovanie zastaviť a zistiť, koľko pamäte sa počas tohto obdobia použilo.

Ako to môžem urobiť na serveri Ubuntu?

Myslím, že by som mohol spustiť cronjob približne každú 5. sekundu a zavolať príkaz, ktorý zaznamená aktuálne využitie pamäte do textového súboru. Ale aký príkaz by som mal použiť, aby som získal aktuálne využitie pamäte vo formáte, ktorý sa dá ľahko zaznamenať do textového súboru?

Riešenie

Odporúčam skombinovať predchádzajúce odpovede

watch -n 5 free -m

Všimnite si, že Linux rád používa akúkoľvek dodatočnú pamäť na vyrovnávaciu pamäť blokov pevného disku. Takže sa nechcete pozerať len na voľnú Mem. Chcete sa pozrieť na stĺpec free v riadku -/+ buffers/cache:. Ten ukazuje, koľko pamäte majú aplikácie k dispozícii. Takže som práve spustil free -m a dostal som toto:

             total       used       free     shared    buffers     cached
Mem:          3699       2896        802          0        247       1120
-/+ buffers/cache:       1528       2170
Swap:         1905         62       1843

Viem, že používam 1528 MB a mám voľných 2170 MB.

Poznámka: Ak chcete zastaviť tento cyklus hodiniek, stačí stlačiť Ctrl+C.

Komentáre (7)

Použite príkaz voľný. Toto je napríklad výsledok príkazu free -m:

             total       used       free     shared    buffers     cached
Mem:          2012       1666        345          0        101        616
-/+ buffers/cache:        947       1064
Swap:         7624          0       7624

free -m | grep /+ vráti iba druhý riadok:

-/+ buffers/cache:        947       1064
Komentáre (1)

Príkaz watch môže byť užitočný. Skúste príkaz watch -n 5 free na monitorovanie využitia pamäte s aktualizáciami každých päť sekúnd.

Komentáre (1)