注意用top命令查看才能看到真正的free内存。下面是查看真正内存使用量的另一种命令。

watch -n 1 cat /proc/meminfo

搜索发现有三种方法都可以达到释放内存的目的。

watch -n 1 free -m
or:
free -m

上述这种方法只增加了几十M。

sudo sysctl -w vm.drop_caches=3

上述这种方法,目的是释放kernel用在cache上面的内存。增加了约1G.

下面这种方法释放的更多,但可能会影响系统的稳定!一定要小心使用。

sudo sync && echo 3 | sudo tee /proc/sys/vm/drop_caches

这个命令会释放无论是使用中的内存还是cache(page cache, inodes, and dentries),小心使用。

总的来说,还是第二种方法更合适,如果需要隔一段时间自动运行一次,可以使用cron jobs。

相关阅读:

Linux SWAP 分区建立及释放内存 http://www.linuxidc.com/Linux/2013-03/81890.htm

Linux下如何释放内存 http://www.linuxidc.com/Linux/2013-03/81378.htm

CentOS 5 释放内存的方法 http://www.linuxidc.com/Linux/2012-02/53991.htm

Linux 下释放内存  http://www.linuxidc.com/Linux/2013-09/90702.htm

更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2