我们根据经验会有这样的结论,系统启动后,随着时间的增加,快则几分钟,慢则几个小时,linux的内存占用会接近90%。如果真是这样,那是很恐怖的,但事实并非如此。真正计算linux内存占用的方法是:used – buffers – cached。如上图,内存占用实际为:3823 – 339 – 2951 = 532M。原因是linux下系统缓存的使用会内存优先,当应用程序需要内存时,会自动扔掉缓存给应用程序。
为了方便可以写个bash程序命名mem,内容如下:
- #!/bin/sh
- echo Mem Used: $(free -m | grep 'Mem:' | awk '{print $3-$6-$7}')M
<link href="http://admin.kukaka.org/fckeditor/editor/plugins/highlighter/dp.SyntaxHighlighter/Styles/SyntaxHighlighter.css" type="text/css" rel="stylesheet" />
然后增加可执行权限,mv到/usr/bin/里面。这样以后要想查看内存使用情况,直接在shell中执行mem命令即可。
浙公网安备 33010602011771号