不知道服务器是什么原因,有些时候 buff/cache 非常嚣张,占用了大量内存, buff/cache你不干活还占用那么多资料,实在是叔可忍,婶子不可忍
废话不多说,直接来解决办法
自己动手写一个定时清理缓存的脚本
切换到 /root目录下
创建清理的脚本
touch cleanCache.sh
把cleanCache.sh 脚本变更为可读,可写,可执行的脚本文件
chmod 777 cleanCache.sh
编辑脚本内容
vim cleanCache.sh
然后按 键盘的 insert 建,进去编辑模式
把以下内容拷贝进去(注意:这里有一个巨坑,#号后面的中文,只能单独写在一行,不能写在命令后面,切记,切记,切记)
#!/bin/bash
#缓存清理频率随个人和实际情况而定
echo "每5分钟清除一次缓存"
echo "开始清除缓存"
#延迟3秒
sleep 3
sync; echo 3 > /proc/sys/vm/drop_caches
echo "缓存清理完成"
然后,按键盘的 ESC键推出编辑模式
然后 :wq 保存退出
创建定时任务
//弹出配置文件
crontab -e
下图所示,就是定时任务的列表
然后按 键盘的 insert 建,进去编辑模式
然后在结尾处,把下面的命令拷贝进去(每30分钟执行一次清理缓存的任务,要根据具体情况设置频率)
*/30 * * * * ./cleanCache.sh
然后 :wq 保存退出
保证crond启动以及开机自启
启动 crond
systemctl start crond.service
开机自启 crond
systemctl enable crond.service
查看buff/cache情况
free -m
查看正在执行的定时任务
tail -f /var/log/cron
如下图所示,定时清理缓存的脚本已经设置成功
这时还没完,脚本是写好了,定时任务也配置好了,保险起见,还是要手动测试一下
首先,要切换到 /root目录***意,这里可能不同,要注意不同的目录)
[[email protected]_0_10_centos ~]# ll
如下图所示,就是清理缓存脚本的位置
查看 当前 buff/cache情况
free -m
手动执行清理缓存的脚本
./cleanCache.sh
再次查看 当前 buff/cache情况
free -m
如下图所示 如果buff/cache有明显减少,则说明,清理脚本配置成功