Linux 定时回收内存
OS:Debian 7.4 RAM:4096M
近来Transmission频繁自动退出,在做了修改缓存,更改任务数,更改Transmission版本号之后都没有解决问题,最后怀疑是硬盘坏道,在扫描了5小时后终于确认我的硬盘没有问题。
无奈中, 只能重启Linux(不到万不得已是不重启主机的),之后问题就这样解决了。高兴之余,就产生了是否内存不够的疑问。之前没有往这方面想是因为4G内存对于一台以Linux为系统的NAS来说是远远足够的,但联想到Transmission退出后IO忽然变高(putty操作变得很卡)和缓存改小后崩溃的频率加快这两个事实,我就猜想,Transmission之所以崩溃是因为可用内存不足,导致其往硬盘写入数据的时候出错,进而自动崩溃,而且崩溃后还会对硬盘进行写入动作。
基于上述猜想,Google了一下回收内存的文章,自己写了个Script,用Crontab自动每隔20分钟回收一次内存,目前已经稳定运行了48小时还多!
Script具体为:
sync echo 3 > /proc/sys/vm/drop_caches