麒麟V10 x86 解决内存无法释放问题
·
1、创建 freemem.sh脚本
echo 后的参数可以是 1 2 3,结合 free -m 命令我的问题是由于页缓存导致的所以就选择了1
1 释放Linux系统中的页面缓存
2 释放目录项和inode缓存
3 释放目录项、inode和页面缓存
#! /bin/sh
sync && echo 1 > /proc/sys/vm/drop_caches
exit 1
2、创建task.sh 脚本 并与freemem.sh放置在同级目录,终端执行task.sh脚本
#! /bin/sh
echo "即将给脚本指令赋予可执行权限,可能需要输入密码"
#登录管理员用户
#task.sh所在路径
varCurrentPath=$(cd `dirname $0`; pwd)
varTimerSysPath=/usr/timer
varTimerName=freemem.sh
varTimeProjectParth=$varCurrentPath/$varTimerName
varTimeSysInstallParth=$varTimerSysPath/$varTimerName
#判断安装目录下是否存在定时配置文件
if [ -f "$varTimeProjectParth" ]; then
echo "定时文件$varTimeProjectParth存在"
else
echo "定时文件$varTimeProjectParth不存在"
exit 0;
fi
#-f 判断文件是否存在
if [ -f "$varTimeSysInstallParth" ]; then
echo "定时文件$varTimeSysInstallParth存在"
else
echo "定时文件$varTimeSysInstallParth不存在,重新拷贝赋值"
sudo mkdir $varTimerSysPath
sudo cp $varTimeProjectParth $varTimeSysInstallParth
sudo chmod -R 777 $varTimeSysInstallParth
fi
#获取自启动任务
FreeMem=`sudo crontab -l | awk '{print $NF}' | grep 'freemem.sh'`
#配置启动任务,-z判断文件
if [ -z "$FreeMem" ]; then
echo "新配置定时任务"
#设置自启动任务 1分钟执行一次
(sudo crontab -l;sudo echo "*/1 * * * * /usr/timer/freemem.sh") | sudo crontab -
else
echo "定时任务已经存在"
fi
exit 0
说明:
此脚本是采用开机自启动任务每一分钟释放一次页缓存内存,你也可以根据自己需求 修改crontab 的定时参数
具体行:(sudo crontab -l;sudo echo "*/1 * * * * /usr/timer/freemem.sh") | sudo crontab -
也可以直接下载资源:
更多推荐

所有评论(0)