Hvordan kan jeg overvåge hukommelsesforbruget?

Jeg har brugt top til at se hukommelsesforbruget i øjeblikket. Men jeg vil gerne overvåge hukommelsesforbruget over en periode. F.eks. starte overvågning og derefter udføre et par kommandoer, og endelig stoppe overvågningen og se hvor meget hukommelse, der er blevet brugt i løbet af perioden.

Hvordan kan jeg gøre dette på Ubuntu Server?

Jeg gætter på at jeg kunne starte et cronjob hvert 5. sekund eller deromkring, og påkalde en kommando der logger det aktuelle hukommelsesforbrug i en tekstfil. Men hvilken kommando skal jeg bruge for at få det aktuelle hukommelsesforbrug i et format, der er let at logge til en tekstfil?

Løsning

Jeg anbefaler at kombinere de tidligere svar

watch -n 5 free -m

Bemærk, at Linux kan lide at bruge al ekstra hukommelse til [cache harddiskblokke] (http://www.linuxhowtos.org/System/Linux%20Memory%20Management.htm). Så du don't ønsker at se på bare den frie Mem. Du skal se på kolonnen free i rækken -/+ buffers/cache:. Den viser, hvor meget hukommelse der er tilgængelig for programmerne. Så jeg kørte bare free -m og fik dette:

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

Jeg ved, at jeg bruger 1528 MB og har 2170 MB fri.

Note: For at stoppe denne watch-cyklus kan du bare trykke på Ctrl+C.

Kommentarer (7)

Brug kommandoen free. Dette er f.eks. resultatet af 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 /+ returnerer kun den anden linje:

-/+ buffers/cache:        947       1064
Kommentarer (1)

Kommandoen watch kan være nyttig. Prøv watch -n 5 free for at overvåge hukommelsesforbruget med opdateringer hvert femte sekund.

Kommentarer (1)