1. 程式人生 > >定時 回收 CentOS 系統 內存

定時 回收 CentOS 系統 內存

%d 系統 memory -m {} free lse limit 使用

#!/bin/bash

LIMIT=512
LOG_FILE="/data/logs/timing_dropcaches.log"

#定時清理系統內存
#https://blog.csdn.net/gaojinshan/article/details/40710369
used=`free -m | awk NR==2 | awk {print $3}`
free=`free -m | awk NR==2 | awk {print $4}`

echo "===========================" >> $LOG_FILE
date +"%Y-%m-%d %H:%M.%S
" >> $LOG_FILE echo "Memory usage | [Use:${used}MB][Free:${free}MB] | limit[${LIMIT}MB]" >> $LOG_FILE # drop caches when the free memory less than 512M if [ $free -le $LIMIT ] ; then #sync && echo 1 > /proc/sys/vm/drop_caches #sync && echo 2 > /proc/sys/vm/drop_caches
sync && echo 3 > /proc/sys/vm/drop_caches echo "OK" >> $LOG_FILE else echo "Not required" >> $LOG_FILE fi

以上腳本加入crontab

#每半小時檢查內存使用情況,並清理一次內存
*/30 * * * * /data/shell/timing_dropcaches.sh >> /data/logs/timing_dropcaches.log

#刪除3天前的日誌
0 1 * * * /usr/bin/find /data/logs/ -name *.log -mtime +3 | grep 2018 | xargs rm -Rf {} > /dev/null 2>&1

定時 回收 CentOS 系統 內存