Linux系統buff/cache 中緩存數據占用內存過高,定時清理buff/cache ,釋放系統內存
root權限創建腳本文件:
touch cleanCache.sh && vim cleanCache.sh
#!/bin/bash echo "開始清理緩存" sync;sync;sync #寫入硬盤,防止數據丟失 sleep 10 #延遲10秒 echo 1 > /proc/sys/vm/drop_caches echo "清理結束"
#腳本可以根據自己情況修改:
#默認是0,不清除緩沖區緩存和頁面緩存
#可用值 0 到 3
echo 1 > /proc/sys/vm/drop_caches
echo 1 > /proc/sys/vm/drop_caches
echo 1 > /proc/sys/vm/drop_caches
#值越高系統上的程序會跑起來越慢
設置定時任務,每隔2小時運行一次
crontab -e 0 */2 * * * sh /root/cleanCache.sh //查看是否設置成功 crontab -l
保證crond啟動以及開機自啟
systemctl start crond.service systemctl enable crond.service
查看定時任務是否被執行
cat /var/log/cron | grep cleanCache