linux cache自动检测释放脚本

项目中一个测试程序在运行过程需要不断的读写文件,长时间运行后,系统可以用内存原来越少,cached的内存越来越多,需要一个定时release cache内存的脚本
  1. #!/bin/sh

  2. echo "2bbbbbbbbbbbbbbbbbbbbb"

  3. while true
  4. do

  5. #MEM_USED=`free -m | awk 'NR==2' | awk '{print $3}'`
  6. MEM_FREE=`free -m | awk 'NR==2' | awk '{print $4}'`

  7. if [ $MEM_FREE -le 500000 ] ; then
  8.     sync && echo 1 > /proc/sys/vm/drop_caches
  9.     sync && echo 2 > /proc/sys/vm/drop_caches
  10.     sync && echo 3 > /proc/sys/vm/drop_caches
  11.     echo "Free Memory Cache Buffer OK"
  12. else
  13.     echo "Not Required Free Memory Cache Buffer"
  14. fi

  15. # sleep 30 minute
  16. sleep 1800

  17. done
if   [  $MEM_FREE  - le 500000  ]  ; then: 检测到空闲内存小于等于500000时,释放cached占用内存到free内存中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值