清理缓存命令linux(linux内存自动清理工具)

linux内存清理脚本,新建freeme.sh用于定时清理linux内存,当linux内存使用超过临界值时,快速清理释放内存,并保障主要业务运行,linux 定时脚本crontab使用

#! /bin/sh echo "linux内存清理脚本,用于定时清理linux内存,当linux内存使用超过临界值时,快速清理释放内存,并保障主要业务运行,linux 定时脚本crontab使用" #当前使用内存 used=`free -m | awk 'NR==2' | awk '{print $3}'` #当前空闲内存 free=`free -m | awk 'NR==2' | awk '{print $4}'` #追加输出分隔符日志到/home/logs/memuse.log文件 echo "===========================" >> /home/logs/memuse.log #追加输出时间到日志文件 date >> /home/logs/memuse.log #追加输出内存使用情况到日志文件 echo "Memory usage before | [Use:${used}MB][Free:${free}MB]" >> /home/logs/memuse.log #当剩余内存小于4G时,触发清理内存 if [ $free -le 4000 ] ; then #内存清理逻辑 sync && echo 3 > /proc/sys/vm/drop_caches used_ok=`free -m | awk 'NR==2' | awk '{print $3}'` free_ok=`free -m | awk 'NR==2' | awk '{print $4}'` echo "Memory usage after | [Use:${used_ok}MB][Free:${free_ok}MB]" >> /home/logs/memuse.log #当内存清理完成后的主要业务处理逻辑 docker restart tomcat8 tomcat8-test #内存清理完成,追加成功日志 echo "OK" >> /home/logs/memuse.log else #不需要清理日志 echo "Not required" >> /home/geocube/gc-shell/logs/mem.log fi exit 1

清理缓存命令linux(linux内存自动清理工具)(1)

实例1:每1分钟执行一次清理

* * * * * /home/freeme.sh

实例2:每小时的第3和第15分钟执行清理

3,15 * * * * /home/freeme.sh

实例3:在上午8点到11点的第3和第15分钟执行清理

3,15 8-11 * * * /home/freeme.sh

实例4:每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2 * * /home/freeme.sh

实例5:每周一上午8点到11点的第3和第15分钟执行

3,15 8-11 * * 1 /home/freeme.sh

实例6:每晚的21:30清理

30 21 * * * /home/freeme.sh

实例7:每月1、10、22日的4 : 45

45 4 1,10,22 * * /home/freeme.sh

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页