Linux內存占用大,用Shell腳本自動定時清除/釋放內存


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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM