315 votes

Comment puis-je surveiller l'utilisation de la mémoire ?

J'ai utilisé top pour voir l'utilisation de la mémoire en ce moment. Mais je voudrais surveiller l'utilisation de la mémoire sur une période de temps. Par exemple, lancer la surveillance, puis exécuter quelques commandes, et enfin arrêter la surveillance et voir combien de mémoire a été utilisée pendant cette période.

Comment puis-je faire cela sur le serveur Ubuntu ?

Je suppose que je pourrais lancer un cronjob toutes les 5 secondes environ, et invoquer une commande qui enregistre l'utilisation actuelle de la mémoire dans un fichier texte. Mais quelle commande dois-je utiliser pour obtenir l'utilisation actuelle de la mémoire dans un format facile à enregistrer dans un fichier texte ?

10voto

Amir Points 479

Vous pouvez le faire en utilisant cat /proc/meminfo .

MemTotal:        4039160 kB
MemFree:          309796 kB
MemAvailable:    3001052 kB
Buffers:          345636 kB
Cached:          2341288 kB
SwapCached:            8 kB
Active:          1725160 kB
Inactive:        1551652 kB
Active(anon):     538404 kB
Inactive(anon):    70076 kB
Active(file):    1186756 kB
Inactive(file):  1481576 kB
Unevictable:          32 kB
Mlocked:              32 kB
SwapTotal:       4194300 kB
SwapFree:        4194044 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:        589988 kB
Mapped:           255972 kB
Shmem:             18596 kB
Slab:             374888 kB
SReclaimable:     310496 kB
SUnreclaim:        64392 kB
KernelStack:        6976 kB
PageTables:        26452 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     6213880 kB
Committed_AS:    3589736 kB
VmallocTotal:   34359738367 kB
VmallocUsed:           0 kB
VmallocChunk:          0 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      147392 kB
DirectMap2M:     4046848 kB

6voto

cdutra Points 1061

Je viens de trouver cette solution et elle fonctionne très bien, en créant une interface graphique à travers le CLI :

# fixed link
git clone https://github.com/aristocratos/bashtop
cd bashtop
bash bashtop

Screenshot

4voto

Alex Chen Points 325

Pour un contrôle visuel de l'utilisation globale de la RAM, si vous utilisez la fonction Byobu il maintiendra votre utilisation de la mémoire dans le coin inférieur droit du terminal et fonctionnera pendant que vous êtes dans n'importe quelle session du terminal.

Comme vous pouvez le voir sur la capture d'écran, ma machine virtuelle a un temps de fonctionnement de 1h3m, une charge de 0.00, un processeur (virtuel) de 2.8GHz et 994MB (21%) de RAM disponible sur le système.

Byobu in use

4voto

Tim Points 41

Solution et sortie à ligne unique :

free -m | grep "Mem:"

Voici un exemple de la sortie attendue :

Mem:           3944         652         302          18        2990        2930

1voto

nikhilbelsare Points 58

J'utiliserais Cactus . Cela permettra d'établir un graphique de l'utilisation de la mémoire, etc. sur une période donnée, et vous pourrez vérifier cette utilisation à l'aide de votre navigateur Web.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X