0

buff/cache内存占用过多

转:https://blog.csdn.net/qq_30754565/article/details/82458252

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

——————— 

作者:last-player 

来源:CSDN 

原文:https://blog.csdn.net/qq_30754565/article/details/82458252 

版权声明:本文为博主原创文章,转载请附上博文链接!

holyzhang