【芯片EDA】【系统】linux执行命令报错“-bash: fork: Cannot allocate memory”
问题描述
用户远程登录Linux操作系统执行大部分命令报错“-bash: fork: Cannot allocate memory”
根因
服务器使用的总线程数已经超过系统默认的最大线程数,需要修改内核参数,增加系统默认的最大线程数
解决方案
1、临时解决方法
echo 100000 > /proc/sys/kernel/pid_max
2、永久解决方案
修改内核参数:
cat /etc/sysctl.conf
kernel.pid_max = 100000
永久生效
sysctl -p
建议与总结
需要根据业务量评估峰值时的最大线程数,进而去优化系统默认线程数的上限。可通过以下命令查询系统当前的线程数总量:
ps -eLf|wc -l