Linux雲服務器用一段時間就會出現buff/cache內存佔用過多的情況,導致free空閒內存變得非常少,嚴重影響使用;
這個時候就可以用如下命令去清除一下cache內存
- echo 1 > /proc/sys/vm/drop_caches
- echo 2 > /proc/sys/vm/drop_caches
- echo 3 > /proc/sys/vm/drop_caches
效果顯著
每一次都自己敲一遍着實麻煩,不如設置一個定時清理的腳本
首先切換到root賬戶
su root
找一個目錄,然後創建腳本文件
touch cleanCache.sh
用vi編輯
vi cleanCache.sh
添加如下內容
- #!/bin/bash
- #每天0點清除一次緩存
- echo "開始清理緩存"
- sync;sync;sync #寫入硬盤,防止數據丟失
- sleep 10 #延遲10秒
- echo 1 > /proc/sys/vm/drop_caches
- echo 2 > /proc/sys/vm/drop_caches
- echo 3 > /proc/sys/vm/drop_caches
- echo "清理結束"
通過如下命令測試腳本是否正常運行
- chmod 777 cleanCache.sh
- ./cleanCache.sh
下面開始設置自動定期清理
輸入如下命令,打開配置文件
crontab -e
在末尾添加如下內容:(每天0點的時候執行一次,可以按需更改)
* 0 * * * ./路徑/cleanCache.sh
然後輸入如下指令可以查看是否成功
crontab -l
到此就大功告成了