實現(xiàn)釋放CentOS系統(tǒng)內(nèi)存的Shell方法
CentOS(Community Enterprise Operating System,中文意思是:社區(qū)企業(yè)操作系統(tǒng))是Linux發(fā)行版之一,它是來自于Red Hat Enterprise Linux依照開放源代碼規(guī)定釋出的源代碼所編譯而成。接下來是小編為大家收集的實現(xiàn)釋放CentOS系統(tǒng)內(nèi)存的Shell方法,希望能幫到大家。
實現(xiàn)釋放CentOS系統(tǒng)內(nèi)存的Shell方法
這幾天發(fā)現(xiàn)CentOS系統(tǒng)內(nèi)存一直漲,即使把apache和mysql關(guān)閉了,內(nèi)存也不釋放,可以使用以下腳本來釋放內(nèi)存:
腳本內(nèi)容:
復(fù)制代碼 代碼如下:
#! /bin/bash
# cache釋放:
# To free pagecache:
sync
sync
#echo 1 > /proc/sys/vm/drop_caches
# To free dentries and inodes:
#echo 2 > /proc/sys/vm/drop_caches
# To free pagecache, dentries and inodes:
echo 3 > /proc/sys/vm/drop_caches
利用系統(tǒng)crontab實現(xiàn)每天自動運行:
復(fù)制代碼 代碼如下:
crontab -e
輸入以下內(nèi)容:
復(fù)制代碼 代碼如下:
00 00 * * * /root/Cached.sh
每天0點釋放一次內(nèi)存,這個時間可以根據(jù)自己需要修改設(shè)置
在運行./Cached.sh時如果提示錯誤:Permission denied 權(quán)限的問題,可以運行:
復(fù)制代碼 代碼如下:
chmod +x .Cached.sh
此外還可以通過修改/etc/sysctl.conf的方法來達到自動釋放緩存的目的。但是內(nèi)存不夠用,最好還是去找找其他的原因,比如程序設(shè)置是否合理,是否突發(fā)訪問量很大,或者程序設(shè)計不合理導(dǎo)致內(nèi)存溢出等,畢竟操作系統(tǒng)本身設(shè)計會考慮各方面的問題,強制騰出cache的大小,可能只是把問題給暫時屏蔽了,不利于判斷問題的所在。
看了“實現(xiàn)釋放CentOS系統(tǒng)內(nèi)存的Shell方法”還想看: