博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决-bash: fork: retry: Resource temporarily unavailable错误
阅读量:4956 次
发布时间:2019-06-12

本文共 1357 字,大约阅读时间需要 4 分钟。

上面这段错误提示的本质是Linux操作系统无法创建更多进程,导致出错。

因此要解决这个问题需要修改Linux允许创建更多的进程。

修改Linux最大进程数

我们可以通过ulimit -a来查看当前Linux系统的一些系统参数。

# ulimit -acore file size          (blocks, -c) 0data seg size           (kbytes, -d) unlimitedscheduling priority             (-e) 0file size               (blocks, -f) unlimitedpending signals                 (-i) 128354max locked memory       (kbytes, -l) 64max memory size         (kbytes, -m) unlimitedopen files                      (-n) 65535pipe size            (512 bytes, -p) 8POSIX message queues     (bytes, -q) 819200real-time priority              (-r) 0stack size              (kbytes, -s) 10240cpu time               (seconds, -t) unlimitedmax user processes              (-u) 128354virtual memory          (kbytes, -v) unlimitedfile locks                      (-x) unlimited

  

在上面这些参数中,通常我们关注得比较多的是一个进程可打开的最大文件数,即open files。

系统允许创建的最大进程数量即是max user processes 这个参数。
我们可以使用 ulimit -u 4096 修改max user processes的值,但是只能在当前终端的这个session里面生效,重新登录后仍然是使用系统默认值。
正确的修改方式是修改/etc/security/limits.d/90-nproc.conf文件中的值。

# vim /etc/security/limits.d/90-nproc.conf      # Default limit for number of user's processes to prevent  # accidental fork bombs.  # See rhbz #432903 for reasoning.    *          soft    nproc     4096  root       soft    nproc     unlimited

  

我们只要修改上面文件中的4096这个值,即可。

 

转载于:https://www.cnblogs.com/Gnnnny/p/10154496.html

你可能感兴趣的文章
采花 flower
查看>>
javascript 闭包的学习
查看>>
C# Socket学习笔记二
查看>>
verilog之四位全加器的编译及仿真(用开源免费的软件——iverilog+GTKWave)
查看>>
BZOJ1491 [NOI2007]社交网络
查看>>
Sqoop自定义多字节列分隔符
查看>>
查询数据表中同一字段下的不同属性值的种类
查看>>
class A<T> where T:new()相关知识点
查看>>
rainyday.js
查看>>
ado.net调用带参数的存储过程
查看>>
Python多线程
查看>>
Glove原理
查看>>
Python机器学习笔记:利用Keras进行分类预测
查看>>
网络编程/tcp协议分析
查看>>
ARIS集成信息系统结构的五个视图
查看>>
美好家园 活力都会
查看>>
JIRA问题状态已关闭,但是解决结果还是未解决
查看>>
LayoutInflater
查看>>
前端小技巧
查看>>
未将对象引用设置到对象的实例
查看>>