错误:bash: fork: Resource temporarily unavailable

在linux系统下,用php的 pcntl_fork 创建子进程时报错:bash: fork: Resource temporarily unavailable, 错误本质是Linux操作系统无法创建更多的进程,导致出错;
因此,解决办法是修改Linux允许创建多个子进程;
使用 ulimit -a 查看当前系统的参数:

core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
max locked memory       (kbytes, -l) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 256
pipe size            (512 bytes, -p) 1
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 709
virtual memory          (kbytes, -v) unlimited

系统允许创建的最大数量进程是max user processes 这个参数,我们只要把这个参数修改即可,两种方式:

  • 当前终端进程有效,重新登录仍然启用默认值:

    ulimit -u 4096
    
  • 永久生效,修改/etc/seurity/limits.d/90-nproc.conf

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容