LEDE / OPENWRT 自动清理内存
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LEDE / OPENWRT 自动清理内存相关的知识,希望对你有一定的参考价值。
参考技术A 配置openwrt时,ssh终端收到错误提示;****out of memory。各种无响应,郁闷之下发扬搬运精神,于是有了下面的脚本#!/bin/sh
used=`free -m | awk 'NR==2' | awk 'print $3'`
free=`free -m | awk 'NR==2' | awk 'print $4'`
echo "===========================" >> /var/log/mem.log
date >> /var/log/mem.log
echo "Memory usage | [Use:$usedKB][Free:$freeKB]" >> /var/log/mem.log
if [ $free -le 153600 ] ; 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" >> /var/log/mem.log
else
echo "Not required" >> /var/log/mem.log
fi
具体作用,查询内存剩余量,低于限定量则清理内存。这里是153600也就是150M以下清理,这里先运行sync,可以防止数据丢失。保存为以下路径:/usr/bin/memclean.sh
然后设置定时运行,修改 /etc/crontabs/root 文件,添加一行
*/10 * * * * /usr/bin/memclean.sh
表示10分钟检测一次内存余量,低于150M 就清理!!!!
以上是关于LEDE / OPENWRT 自动清理内存的主要内容,如果未能解决你的问题,请参考以下文章