Linux RAM temizleme

Bir önceki yazımda bu yazının sinyalini vermiştim. Bildiğiniz üzere bu tarz “memory cleaner” programları her platform için mevcut. Peki biz bu işi linux sunucumuzda nasıl yaparız ?

Ben bu iş için minik bir shell script hazırladım ve bunu crontab’ıma tanımladım. Her saat başı buffer’ı flush ediyor.

free && sync && echo 3 > /proc/sys/vm/drop_caches && free

yukarıdaki komutu crontab-flush-buffer.sh diye bir dosyanın içine yazlım, kayıt edelim ve dosyayı çalıştırılabilir yapalım. Ben dosya isimlerine genelde nerede kullanıyor isem onu yazarak başlıyorum. Bu dosyayı crontab’a ekleyeceğim için crontab-flush-buffer.sh

chmod +x crontab-flush-buffer.sh

./crontab-flush-buffer.sh komutunu çalıştırdığımız zaman

             total       used       free     shared    buffers     cached
Mem:       2061192    1910168     151024          0       2584      28856
-/+ buffers/cache:    1878728     182464
Swap:      4095992    1188104    2907888
             total       used       free     shared    buffers     cached
Mem:       2061192    1891264     169928          0        628      12020
-/+ buffers/cache:    1878616     182576
Swap:      4095992    1188104    2907888

şeklinde bir çıktı alacaksınız. Gördüğünüz üzere fiziksel RAM iniz üzerindeki buffer temizlenmiş durumda.

Hadi bu dosyayı crontab’ımıza ekleyip her saat başı çalışmasını sağlayalım.

crontab -e

komutu ile düzenleme ekranına giriyoruz ve

##### FLUSH RAM BUFFER ####
0 * * * * /root/sh-scripts/crontab-flush-buffer.sh

şeklinde ekliyoruz. Bendeki dizin /root/sh-scripts/ olduğu için bu şekilde, kendinize göre düzenlemeyi ihmal etmeyin.

crontab -l

 

komutu ile listemize bakıyoruz, görüyoruz, gülüyor ve arkamıza yaslanıp kahvemizi içiyoruz.

Yorum Bırak

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir