Q:bash: fork: 无法分配内存,ssh无法连接新会话

发布时间 2023-09-07 15:38:57作者: 三年三班王小朋

老版本系统的内核pid参数比较小(默认设置的是32768)

原因分析,
– 内存不足或进程数超出限制
– 系统内部的总进程数达到pid_max的上限,创建新进程看到以上提示

查看最大进程数  

sysctl kernel.pid_max

 

统计当前进程数  

ps -eLf | wc -l 

 可以看到非常接近最大连接数。

临时修改最大进程数

echo 1000000 > /proc/sys/kernel/pid_max

永久生效

echo "kernel.pid_max=1000000 " >> /etc/sysctl.confsysctl -p

或者修改优化/etc/security/limits.conf或者/etc/sysctl.conf 也能达到一样效果