Frage Wie kann ich die Speichernutzung überwachen?
Ich habe benutzt top
um die Speicherbelegung im Moment zu sehen. Aber ich möchte die Speichernutzung über einen bestimmten Zeitraum überwachen. Beginnen Sie zum Beispiel mit der Überwachung und führen Sie dann einige Befehle aus. Beenden Sie schließlich die Überwachung und sehen Sie, wie viel Speicher in diesem Zeitraum belegt wurde.
Wie kann ich dies auf Ubuntu Server tun?
Ich denke, ich könnte alle 5 Sekunden einen Cronjob starten und einen Befehl aufrufen, der die aktuelle Speichernutzung in einer Textdatei protokolliert. Aber welchen Befehl sollte ich verwenden, um die aktuelle Speichernutzung in einem Format zu erhalten, das leicht in eine Textdatei zu protokollieren ist?
235
2017-10-26 16:50
Ursprung
Antworten:
Ich empfehle, die vorherigen Antworten zu kombinieren
watch -n 5 free -m
Beachten Sie, dass Linux gerne zusätzlichen Speicher verwendet Cache-Festplattenblöcke. Sie wollen also nicht nur das Freie betrachten Mem
. Du willst dir das ansehen free
Spalte der -/+ buffers/cache:
Reihe. Dies zeigt an, wie viel Speicher für Anwendungen verfügbar ist. Also bin ich einfach weggelaufen free -m
und habe das:
total used free shared buffers cached
Mem: 3699 2896 802 0 247 1120
-/+ buffers/cache: 1528 2170
Swap: 1905 62 1843
Ich weiß, dass ich benutze 1528 MB und haben 2170 MB frei.
Hinweis: Um das zu stoppen watch
Zyklus können Sie einfach drücken Strg+C.
290
2017-10-26 17:40
Ich denke htop
ist die beste Lösung.
sudo apt-get install htop
Auf diese Weise werden Sie bemerken, welche Programme den meisten RAM verwenden. und Sie können einfach einen beenden, wenn Sie möchten. Hier ist ein Screenshot!

191
2018-05-18 00:11
Wenn Sie nach einem schönen Speicherauszug suchen, der von jedem laufenden Prozess verwendet wird, dann würde ich Ihnen vielleicht empfehlen, das System auszuprobieren ps_mem.py (gefunden Hier bei pixelbeat.org).
Ich weiß in den obigen Kommentaren, dass Sie einen One-Line-Snapshot haben wollten frei, aber ich dachte, andere könnten das nützlich finden.
Beispielausgabe:
user@system:~$ sudo ps_mem.py
[sudo] password for user:
Private + Shared = RAM used Program
4.0 KiB + 7.5 KiB = 11.5 KiB logger
4.0 KiB + 8.0 KiB = 12.0 KiB mysqld_safe
4.0 KiB + 10.0 KiB = 14.0 KiB getty
4.0 KiB + 42.0 KiB = 46.0 KiB saslauthd (5)
48.0 KiB + 13.0 KiB = 61.0 KiB init
56.0 KiB + 27.5 KiB = 83.5 KiB memcached
84.0 KiB + 26.5 KiB = 110.5 KiB cron
120.0 KiB + 50.0 KiB = 170.0 KiB master
204.0 KiB + 107.5 KiB = 311.5 KiB qmgr
396.0 KiB + 94.0 KiB = 490.0 KiB tlsmgr
460.0 KiB + 65.0 KiB = 525.0 KiB rsyslogd
384.0 KiB + 171.0 KiB = 555.0 KiB sudo
476.0 KiB + 83.0 KiB = 559.0 KiB monit
568.0 KiB + 60.0 KiB = 628.0 KiB freshclam
552.0 KiB + 259.5 KiB = 811.5 KiB pickup
1.1 MiB + 80.0 KiB = 1.2 MiB bash
1.4 MiB + 308.5 KiB = 1.7 MiB fail2ban-server
888.0 KiB + 1.0 MiB = 1.9 MiB sshd (3)
1.9 MiB + 32.5 KiB = 1.9 MiB munin-node
13.1 MiB + 86.0 KiB = 13.2 MiB mysqld
147.4 MiB + 36.5 MiB = 183.9 MiB apache2 (7)
---------------------------------
208.1 MiB
=================================
Private + Shared = RAM used Program
Der einzige Teil, den ich nicht mag, ist die Tatsache, dass das Skript root-Rechte verlangt. Ich hatte noch keine Gelegenheit, genau zu sehen, warum das so ist.
38
2017-10-26 17:19
Benutze die frei Befehl.
Zum Beispiel ist dies der Ausgang von 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 /+
gibt nur die zweite Zeile zurück:
-/+ buffers/cache: 947 1064
22
2017-10-26 17:27
Das Uhr Befehl kann nützlich sein. Versuchen watch -n 5 free
Überwachen der Speichernutzung mit Updates alle fünf Sekunden.
9
2018-01-19 20:09
Zur visuellen Überwachung der gesamten RAM-Nutzung, wenn Sie verwenden ByobuEs wird Ihre Speicherbelegung in der unteren rechten Ecke des Terminals halten und läuft, während Sie sich in einer Terminalsitzung befinden.
Wie Sie auf dem Screenshot sehen können, hat meine virtuelle Maschine eine Betriebszeit von 1h3m, eine Auslastung von 0.00, einen Prozessor mit 2.8GHz (virtuell) und 994MB (21%) des auf dem System verfügbaren Arbeitsspeichers.

4
2018-04-16 19:15
Sie können es mit verwenden cat /proc/meminfo
.

3
2017-09-27 13:30
Einzeilige Lösung und Ausgabe:
free -m | grep "Mem:"
Hier ist ein Beispiel für die erwartete Ausgabe:

3
2017-10-26 18:01
ich würde ... benutzen Kakteen. Dadurch wird die Speicherauslastung für einen bestimmten Zeitraum grafisch dargestellt und Sie können die Verwendung mit Ihrem Webbrowser überprüfen.
1
2017-10-22 15:32