我的实际极限是1024
:
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 95979
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 1024
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
I tried:
sysctl -w fs.file-max=100000
并附加到/etc/sysctl.conf
:
fs.file-max = 100000
即使运行后也没有成功sysctl -p
在 Ubuntu 16.04 和 CentOS 6 上重新加载设置和/或重新启动。
它始终保持设置为1024
.
这个问题是这个问题的延伸其他问题 https://stackoverflow.com/questions/40597488/ruby-too-many-open-files-rb-sysopen.
对于 Ubuntu 17.04。看这个解决方案 https://superuser.com/a/1200818/385027.
Ubuntu 17.04 之前:
我不知道为什么上面的设置不起作用,但似乎你可以通过使用获得相同的结果/etc/security/limits.conf file http://manpages.ubuntu.com/manpages/en/man5/limits.conf.5.html.
将限制设置为/etc/security/limits.conf
sudo bash -c "echo '* - nofile 10240' >> /etc/security/limits.conf"
-
*
指所有用户。您可以将其替换为特定的用户名。
-
-
意味着两者soft
and hard
为了强制执行的限制类型 https://serverfault.com/questions/265155/soft-limit-vs-hard-limit。 Hard 只能由超级用户修改。软可以由非 root 用户修改,并且不能优于硬。
-
nofile
is the 最大打开文件数范围。
-
10240
是新的限制。
Reload
注销并重新登录。sudo sysctl -p
似乎还不够重新加载。
您可以通过以下方式检查新限制:
ulimit -n
在 Ubuntu 16.04 和 CentOS 6 上测试。受此启发answer https://stackoverflow.com/questions/24862733/difference-between-linux-errno-23-and-linux-errno-24/24862823#24862823.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)