Esmu izmantojis top
, lai redzētu atmiņas izmantojumu šobrīd. Bet es gribētu novērot atmiņas izmantojumu noteiktā laika periodā. Piemēram, sākt monitoringu un pēc tam izpildīt dažas komandas, un galu galā pārtraukt monitoringu un redzēt, cik daudz atmiņas ir izmantots šajā periodā.
Kā to var izdarīt Ubuntu serverī?
Es domāju, ka es varētu palaist cronjob katru piekto sekundi vai tā aptuveni, un izsaukt komandu, kas reģistrē pašreizējo atmiņas izmantošanu teksta failā. Bet kādu komandu man vajadzētu izmantot, lai iegūtu pašreizējo atmiņas izmantojumu tādā formātā, ko ir viegli reģistrēt teksta failā?
Es iesaku apvienot iepriekšējās atbildes
watch -n 5 free -m
Ņemiet vērā, ka Linux labprāt izmanto jebkuru papildu atmiņu, lai kešētu cietā diska blokus. Tāpēc jūs nevēlaties apskatīt tikai brīvo Mem
. Jūs vēlaties apskatīt -/+ buferi/ kešatmiņa:
rindas -/+ buferi/ kešatmiņa:
kolonnu brīvs
. Tas parāda, cik daudz atmiņas ir pieejams lietojumprogrammām. Es vienkārši palaidu free -m
un ieguvu šādu rezultātu:
total used free shared buffers cached
Mem: 3699 2896 802 0 247 1120
-/+ buffers/cache: 1528 2170
Swap: 1905 62 1843
Es zinu, ka es izmantoju 1528 MB un man ir 2170 MB brīvas atmiņas.
Piezīme: Lai pārtrauktu šo pulksteņa
ciklu, varat vienkārši nospiest Ctrl+C.
Izmantojiet komandu brīvs.
Piemēram, šis ir free -m
rezultāts:
total used free shared buffers cached
Mem: 2012 1666 345 0 101 616
-/+ buffers/cache: 947 1064
Swap: 7624 0 7624
free -m | grep /+
atgriezīs tikai otro rindu:
-/+ buffers/cache: 947 1064