“无法分配内存”,但似乎没有进程正在耗尽内存

“无法分配内存”,但似乎没有进程正在耗尽内存

我不擅长处理服务器问题,任何帮助都非常感谢。当我尝试在 Linux 机器上启动 python/django shell 时,我得到了OSError: [Errno 12] Cannot allocate memory

free -m似乎证实我的记忆力不佳:

             total       used       free     shared    buffers     cached
Mem:           590        560         29          0          3         37
-/+ buffers/cache:        518         71
Swap:            0          0          0

但是我看不出是什么占用了内存topps aux

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
    1 root      20   0 24336  908    0 S  0.0  0.2   0:00.68 init               
    2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd           
    3 root      20   0     0    0    0 S  0.0  0.0   0:04.85 ksoftirqd/0        

我如何识别泄漏?谢谢。

顺便说一句,我不确定它是否相关,但我所说的机器是运行 Ubuntu 12 的 AWS EC2 实例。

答案1

尝试这个:

  1. 进入top
  2. F(即Shift+ F) 指定排序字段。
  3. 输入。这会将列表中的N小写字母转换为大写字母。nN
  4. Enter。列表现在应按内存使用情况排序。

在主屏幕上按下?或以获得更多选项。h

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 1010 mysql     20   0  545m  37m 1412 S  0.0  6.3   0:32.97 mysqld
  939 bind      20   0  157m  11m 1896 S  0.0  1.9   0:00.03 named
 3036 ubuntu    20   0 25260 7812 1720 S  0.0  1.3   0:00.42 bash
 1212 root      20   0  192m 7420 2680 S  0.0  1.2   0:03.87 apache2
 1322 www-data  20   0  192m 5880 1088 S  0.0  1.0   0:00.00 apache2
 1323 www-data  20   0  192m 5188  436 S  0.0  0.9   0:00.00 apache2
 1325 www-data  20   0  192m 5188  436 S  0.0  0.9   0:00.00 apache2
 1328 www-data  20   0  192m 5188  436 S  0.0  0.9   0:00.00 apache2
 1329 www-data  20   0  192m 5188  436 S  0.0  0.9   0:00.00 apache2
  968 whoopsie  20   0  197m 4332 2980 S  0.0  0.7   0:00.01 whoopsie
  795 root      20   0  153m 4256 3036 S  0.0  0.7   0:00.06 NetworkManager
 2919 root      20   0 90156 3964 3064 S  0.0  0.7   0:00.02 sshd
  804 root      20   0  101m 3656 2656 S  0.0  0.6   0:00.03 cupsd
 1498 root      20   0  570m 3396 2312 S  0.0  0.6   0:00.03 console-kit-dae
  693 root      20   0 49948 2876 2272 S  0.0  0.5   0:00.01 sshd
  756 root      20   0 79036 2844 2044 S  0.0  0.5   0:00.02 modem-manager
  964 root      20   0  124m 2844 2348 S  0.0  0.5   0:00.02 gdm-binary

答案2

ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS

还将按内存使用量的降序对所有进程进行排序。

相关内容