我正在试图弄清楚我的Debian服务器出了什么问题 - 我收到的警告说没有足够的可用内存 - 顶部(正如你在下面看到的那样)说1.8G被消耗了,但是我无法找到哪个应用程序负责它。只有Tomcat运行,根据顶部消耗,约25%,因此530m。但是还剩下超过1 GB,我无法找到它!
Tasks: 54 total, 1 running, 53 sleeping, 0 stopped, 0 zombie
Cpu(s):100.0%us, 0.0%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 2150400k total, 1877728k used, 272672k free, 0k buffers
Swap: 0k total, 0k used, 0k free, 0k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3271 root 18 0 1559m 530m 12m S 0 25.2 1:44.31 java
1568 mysql 15 0 270m 71m 7332 S 0 3.4 0:50.79 mysqld
(全顶输出here)
答案 0 :(得分:4)
Linux系统总是尝试使用尽可能多的ram,用于各种功能,例如缓存可执行文件,甚至只是从磁盘读取页面。毕竟这就是你买快速RAM的原因。
您可以通过
了解有关系统的更多信息cat /proc/meminfo
此有用博客中的更多信息post 如果您发现在缓存中使用了很多,那么您不必担心系统。如果各个进程警告您有关内存问题,那么您必须检查其设置是否有任何内存限制设置。许多服务器进程都有这些进程,如基于php或java的进程。
这种性质的问题也可能更多地出现在https://serverfault.com/
的家中答案 1 :(得分:0)
如我所见,你的'Free'命令返回NO swap space
交换:总共0k,使用0k,0k空闲,0k缓存
测试您的实际使用情况 重启机器 测试使用量 1小时后重新测试 一些进程是内存hoggs 像apache或ntop
参阅: