看不见的进程耗尽了所有内存?

看不见的进程耗尽了所有内存?

我这里内存不足:

$ free -h
             total       used       free     shared    buffers     cached
Mem:          1.9G       1.9G        83M         0B        28M       394M
-/+ buffers/cache:       1.4G       506M
Swap:         2.9G       705M       2.2G

然而 Top 显示唯一正在运行的高内存进程是 java(Netbeans):(我使用 f 键选择字段,按内存%排序)

%Cpu(s):  1.0 us,  1.0 sy,  0.0 ni, 96.2 id,  1.7 wa,  0.0 hi,  0.2 si,  0.0 st
KiB Mem:   2031108 total,  1946956 used,    84152 free,    29080 buffers
KiB Swap:  3063548 total,   722128 used,  2341420 free,   404272 cached

  PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND                                                                                                                 
12825 username  20   0 2309m 704m  18m S   0.0 35.5  19:18.90 java                                                                                                                    
 1488 root      20   0  339m  54m  19m S   0.3  2.7  25:32.13 Xorg                                                                                                                    
 3442 username  20   0 1098m  45m 8416 S   0.7  2.3   6:08.10 unity-panel-ser                                                                                                         
22568 www-data  20   0  353m  32m  24m S   0.0  1.7   0:00.82 apache2                                                                                                                 
22855 www-data  20   0  353m  31m  23m S   0.0  1.6   0:00.34 apache2                                                                              

那么在 Ubuntu 13.04 上什么会占用内存呢?

答案1

从我在您的ps列表中看到的情况来看,java 正在使用 704MB 物理 RAM。使用 终止 PID kill -9 12825

您还可以使用ps -eo pid,rss,cmd --sort -rss | head它列出进程来RES查看哪个 PID 使用了最多的 RAM。

相关内容