第一种:手动释放,不想用脚本的,自己折腾的用户
1 | free -m |
/查看当前可用内存/
1 | cat /proc/sys/vm/drop_caches |
/proc是一个虚拟文件系统,可以通过修改/proc中的文件,来对当前kernel的行为做出调整,cat命令只是显示当前释放内存等级,一共三级.也就是数字3,等级最高..释放最彻底/sync /sync 命令将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件/
1 | echo 3 > sys drop_caches |
呐,数字3的含义在此了,释放pagecache, dentries and inodes这三个家伙/
1 | cat /proc/sys/vm/drop_caches |
同上,查看是否修改正确啦,返回一个3,证明成功啦/
1 | free -m |
查看下可用内存是不是增加了不少/
到这就结束了,只是敲了几个命令..重启后就该怎样还怎样了..需要开机或者定时释放内存的请往下看喽..
第二种脚本释放方法,定时清理内存
1 |
|
以上星号间的复制进去…然后保存..VI命令应该都会的吧.不行就WINSCP自己按路径建立也可以.
继续敲命令
1 | chmod +x /home/sh/god.sh |
(这行是为了避免有些人执行的时候提示权限不足,permin dennied类似这种错误提示.有报错就加.没有可不用)
1 | crontab -e |
/也许有人会在/etc/crontab里改,但试过后发现开机并没有效果…这个有些VPS可能没有预装..自己安装先./
最后一行加入
1 | /1 * * * * /home/sh/god.sh /* |
意思是每一分钟执行下脚本清理下内存,自行设置间隔,具体用法自行谷歌啦,嫌麻烦斜杠后面的1改0~59之间的数字即可/
完毕,reboot重启…然后等个1分钟后..free -m查看下即可..记得对比下.小内存的特别明显..没有优化前,群主我的used行,free只有6,cache到是很多..但锐速就是提示不能分配嘛..有啥办法捏..用此脚本一劳永逸..128M也能在锐速界横着走了好嘛
第三种
前面都一样,只不过脚本内容变了…
改为
1 | free -m |grep -i mem |awk '{if($4 < 100){ printf("3") > "/proc/sys/vm/drop_caches"}}'; |
含义是,先用free -m查看可用内存,如果可用小于100M(聪明的同学看粗来了,数字100可以自行更改呦),则执行清理操作.