Şu anda bellek kullanımını görmek için top
kullandım. Ancak bellek kullanımını belirli bir süre boyunca izlemek istiyorum. Örneğin, izlemeyi başlatın ve ardından birkaç komut çalıştırın ve son olarak izlemeyi durdurun ve dönem boyunca ne kadar bellek kullanıldığını görün.
Bunu Ubuntu Server üzerinde nasıl yapabilirim?
Sanırım her 5 saniyede bir cronjob başlatabilir ve mevcut bellek kullanımını bir metin dosyasında günlüğe kaydeden bir komut çağırabilirim. Ancak mevcut bellek kullanımını bir metin dosyasına kaydetmesi kolay bir biçimde almak için hangi komutu kullanmalıyım?
Önceki cevapları birleştirmenizi tavsiye ederim
watch -n 5 free -m
Linux'un [sabit disk bloklarını önbelleğe almak] için fazladan bellek kullanmayı sevdiğini unutmayın (http://www.linuxhowtos.org/System/Linux%20Memory%20Management.htm). Bu yüzden sadece boş Mem
e bakmak istemezsiniz. Siz -/+ buffers/cache:
satırının free
sütununa bakmak istiyorsunuz. Bu, uygulamalar için ne kadar bellek kullanılabilir olduğunu gösterir. Bu yüzden free -m
komutunu çalıştırdım ve şunu elde ettim:
total used free shared buffers cached
Mem: 3699 2896 802 0 247 1120
-/+ buffers/cache: 1528 2170
Swap: 1905 62 1843
Şu anda 1528 MB kullandığımı ve 2170 MB boş yerim olduğunu biliyorum.
Not: Bu saat
döngüsünü durdurmak için Ctrl+C tuşlarına basabilirsiniz.
free**]1 komutunu kullanın.
Örneğin, bu free -m
komutunun çıktısıdır:
total used free shared buffers cached
Mem: 2012 1666 345 0 101 616
-/+ buffers/cache: 947 1064
Swap: 7624 0 7624
free -m | grep /+` sadece ikinci satırı döndürecektir:
-/+ buffers/cache: 947 1064