我经常收到:
fork: Cannot allocate memory
在 上运行命令时ssh
。我有 4 GB 的 RAM,通常有 2 GB 可用。自从我升级到 Ubuntu 11.10 后,这种情况就开始发生了。
然后我需要重复运行该命令直到它成功完成。
我通过家庭局域网将笔记本电脑连接到服务器。有时甚至在我运行 apt-get 时也会发生这种情况。
知道为什么吗?
答案1
ulimit -a
您能否为我们提供发生这种情况的会话中的运行输出?
/etc/pam.d/sshd
pam_limits.so
当您打开会话时应该涉及。此模块将用于/etc/security/limits.conf
对您的会话应用各种限制,包括有关内存使用的限制。
答案2
top
当我的交换分区未处于活动状态(0 交换内存)时尝试运行时出现此错误,通过启用交换解决了此问题/dev/sda5
:
swapon /dev/sda5