echo 1 > /proc/sys/vm/drop_caches
默认是0,不清除缓冲区缓存和页面缓存
可用值 0 到 3
值越高系统上的程序会跑起来越慢
free -m
蛋疼的是这只是一次性的,所以要写个脚本放定时器每天自动跑自动清理
脚本
touch cleanBuff.sh
vim cleanBuff.sh
#!/bin/bash
echo "开始清理缓存"
sync;sync;sync #写入硬盘,防止数据丢失
sleep 10 #延迟10秒
echo 1 > /proc/sys/vm/drop_caches
echo "清理结束"
设置定时任务(使用root账号)
crontab -e
0 0 * * * sh /root/cleanBuff.sh
//查看是否设置成功
crontab -l
从左到右分别是 分钟、小时、日、月份、星期
////////////////////////////////////////分割线////////////////////////////////////////////////
[root@VM_0_8_centos ~]# vim buffer.sh
#!/bin/bash
#discription:The script is release buffer/cache
#Writer by mslinux mail : mslinux@163.com
[ -e /var/spool/cron/root ]
if [ $? -eq 0 ]
then
cat >> /opt/buffer.sh << EOF
#!/bin/bash
#discription:The scipt is release Buffer/cache
#writer by mslinux
sync
sync
sync
echo 3 > /proc/sys/vm/drop_caches
EOF
echo "0 2 * * * /usr/bin/bash /opt/buffer.sh" >> /var/spool/cron/root
if [ $? -eq 0 ]
then
systemctl restart crond.service
fi
else
echo " Not find cront list Please exit"
fi
[root@VM_0_8_centos ~]# bash buffer.sh