Memory 内存已用,但我可以';看不到使用它的流程(Debian)

Memory 内存已用,但我可以';看不到使用它的流程(Debian),memory,debian,Memory,Debian,我的问题是: top - 11:32:47 up 22:20, 2 users, load average: 0.03, 0.72, 1.27 Tasks: 112 total, 1 running, 110 sleeping, 1 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 8193844k total, 7508

我的问题是:

top - 11:32:47 up 22:20,  2 users,  load average: 0.03, 0.72, 1.27
Tasks: 112 total,   1 running, 110 sleeping,   1 stopped,   0 zombie
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   8193844k total,  7508292k used,   685552k free,    80636k buffers
Swap:  2102456k total,    15472k used,  2086984k free,  7070220k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                                                           
28555 root      20   0 57424  38m 1492 S    0  0.5   0:06.38 bash                                                                                                                                                                                                              
28900 root      20   0 39488 7732 3176 T    0  0.1   0:03.12 python                                                                                                                                                                                                            
28553 root      20   0 72132 5052 2600 S    0  0.1   0:00.22 sshd                                                                                                                                                                                                              
28859 root      20   0 70588 3424 2584 S    0  0.0   0:00.06 sshd                                                                                                                                                                                                              
29404 root      20   0 70448 3320 2600 S    0  0.0   0:00.06 sshd                                                                                                                                                                                                              
28863 root      20   0 42624 2188 1472 S    0  0.0   0:00.02 sftp-server                                                                                                                                                                                                       
29406 root      20   0 19176 1984 1424 S    0  0.0   0:00.00 bash                                                                                                                                                                                                              
 2854 root      20   0  115m 1760  488 S    0  0.0   5:37.02 rsyslogd                                                                                                                                                                                                          
29410 root      20   0 19064 1400 1016 R    0  0.0   0:05.14 top                                                                                                                                                                                                               
 3111 ntp       20   0 22484  604  460 S    0  0.0  10:26.79 ntpd                                                                                                                                                                                                              
 3134 proftpd   20   0 64344  452  280 S    0  0.0   6:29.16 proftpd                                                                                                                                                                                                           
 2892 root      20   0 49168  356  232 S    0  0.0   0:31.58 sshd                                                                                                                                                                                                              
    1 root      20   0 27388  284  132 S    0  0.0   0:01.38 init                                                                                                                                                                                                              
 3121 root      20   0  4308  248  172 S    0  0.0   0:16.48 mdadm  
正如您所看到的,使用了7.5 GB的内存,但没有使用它的进程。 它是怎样的,以及如何解决这个问题


感谢您的回答。

要查看所有流程,您可以使用该命令:

ps aux
然后尝试使用不同的过滤器进行排序

ps faux
希望有帮助

如果您的系统开始使用交换文件,那么您的内存负载很高。取决于文件系统,您使用的程序-linux系统可能会分配您所有的系统内存-但这并不意味着他们正在使用它

我们使用的许多ubuntu和debian服务器都有32或64 mb的可用内存,但不使用交换。
然而,我不是Linux专家,所以如果我错了,请有人纠正我:)

我手边没有一个Linux测试箱,但是看起来你可以用交互式命令对top的输出进行排序,这样你就可以把最大的内存用户带到顶部。检查手册页并进行实验

更新:在top I have(procps 3.2.7)版本中,您可以点击“”更改其排序依据的字段。实际上没有说它是什么字段,你必须看看显示是如何变化的。只要你做一点实验就不难了

然而,Arrowmaster的观点(它可能被用于缓存)是一个更好的答案。使用“免费”查看使用了多少。


把整个内容复制/粘贴到这里来破坏网站太好了。

我也遇到过类似的问题。我在Pi B+上运行Raspbian,连接了TP-Link USB无线LAN棒。棒导致了一个问题,导致几乎所有的内存在系统启动时被消耗(大约430个445MB)。就像您的情况一样,正在运行的进程没有消耗那么多内存。当我卸下记忆棒并重新启动时,一切正常,只消耗了50 MB内存。

我发现这种情况是由我们的一个应用程序进程造成的。它加载了大量内存,然后就死掉了。但是为什么在使用它的进程死掉时内存没有重新分配(没有设置为空闲)?这与“top”是一样的,但在另一种方式。因此,在进程死掉之后,您可以检查哪些值是“free”的吗?它提供的值与“top”相同,您可以使用strace调试进程。这样你就会看到那里发生了什么。我想下面一定有更大的数字。这是一个轻负载。是的,但也有7.5 GB的内存消耗,我不知道在哪里(因为你怎么看没有任何进程有这样的负载)“它不会以任何方式从应用程序中拿走内存,永远!”错了。VirtualBox无法分配它。