linux – 无法使用sysctl更改每个进程的最大打开文件数
我的实际限制是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 我试过了: sysctl -w fs.file-max=100000 并附加到/etc/sysctl.conf: fs.file-max = 100000 即使在Ubuntu 16.04和CentOS 6上运行sysctl -p以重新加载设置和/或重新启动之后,也没有成功. 它始终保持设置为1024. 这个问题是other question的延伸. 解决方法
对于Ubuntu 17.04.见
this solution.
在Ubuntu 17.04之前: 我不知道为什么上面的设置不起作用,但似乎你可以通过使用 在/etc/security/limits.conf中设置限制 sudo bash -c "echo '* - nofile 10240' >> /etc/security/limits.conf" > *表示所有用户.您可以使用特定的用户名替换它. 刷新 注销并重新登录.sudo sysctl -p似乎不足以重新加载. 您可以通过以下方式检查新限制: ulimit -n 在Ubuntu 16.04和CentOS 6上测试.灵感来自于answer. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |