Articles of ulimit

全球范围内限制为无限制的潜在问题是什么?

我的团队最近遇到了ulimit在我们的Apache服务器上设置太低的问题。 我们谈到增加一些任意数量的限制,但是我们不能想到任何理由不把它全面地设置为无限制。 有没有好的理由不这样做? 我们意识到可以使用更多的资源,但是处理资源使用可能比应用程序崩溃或“出错”问题更容易。

需要采取哪些步骤才能确保超过1024个客户端可以连接到redis?

我需要一次将超过1024个客户端连接到单个redis实例。 我的redis进程以ubuntu用户身份运行。 我编辑了/etc/security/limits.conf来指定: ubuntu soft nofile 65535 ubuntu hard nofile 65535 我也确保redis.conf中的maxclients参数被注释掉了。 我必须采取哪些其他步骤来确保超过1024个客户端可以连接到我的Redis实例? 谢谢! 编辑2014年8月:看到这个问题的步骤,你将需要做的,以使这个工作在Ubuntu 2014.04 LTS: 为什么在更新到limits.conf之后,redis会报告1024个文件的限制?

Nginx的打开的文件太多,是不是worker_rlimit_nofile的设置?

在nginx.conf中设置worker_rlimit_nofile值是否足够解决nginx中Too many open files的问题? 还是我仍然需要更新sysctl.conf和limits.conf ?

在CentOS / RHEL上增加nproc

我有一个问题,mysqld用尽线程,并在重负载时抛出错误。 我已经追溯到一个问题,那就是pid似乎限制了1024个进程的软限制(为了提高可读性,删除了其他限制): [root@db1 limits.d]# cat /proc/`pidof mysqld`/limits Limit Soft Limit Hard Limit Units Max processes 1024 191967 processes 我在/etc/security/limits.d/中有一个名为99-mysql.conf的文件,其中包含: mysql soft nofile 20000 mysql hard nofile 20000 mysql soft nproc 20000 mysql hard nproc 20000 据我所见,问题来自用户启动的MySQL。 我没有testing过这个,但是我假设如果MySQL在系统启动的时候启动,那么它应该有正确的限制。 有没有办法增加这个pid和未来mysqld进程的nproc的软限制?

在Ubuntu上全局应用ulimit

我需要将“ulimit -s 256”应用于任何系统线程。 有没有办法在Ubuntu服务器下实现这个目标?

找出其他用户的限制

在CentOS 6.4 / 64位 – 如何find用户“无人”的限制? 因为我不能只是su – nobody打电话ulimit -a : # id nobody uid=99(nobody) gid=99(nobody) groups=99(nobody) # su – nobody This account is currently not available. 更新: 我在问:如何为CentOS用户nobody调用ulimit -a ,这样我就可以调整/etc/security/limits.conf关于该用户打开文件的最大数量。 更多的细节: 我有一个由init (我为它创build了一个文件: /etc/init/my_card_game.conf )启动的perl脚本(一个基于非基于TCP-sockets的纸牌游戏守护进程),但是然后丢弃超级用户privilleges和nobody运行: sub drop_privs { my ($uid, $gid) = (getpwnam('nobody'))[2, 3]; die "User nobody not found\n" unless $uid && $gid; umask(0); […]

我们可以在/ etc / sysconfig / init文件中设置ulimit以在启动时应用该值

我需要在启动时将ulimit值设置为所有服务。 我在/etc/sysconfig/limits.conf中设置了值,但这些值在引导期间不适用,默认值为1024。 我已经在limits.conf中设置了值,还检查了/etc/pam.d/*是否包含“必需的pam_limits.so”条目,甚至/etc/security/limits.d/90-nproc.conf也没有默认值条目。 现在我find了另一种在启动时包含这个值的方法,我遇到了/ etc / sysconfig / init文件。 当我在这个文件中设置的值,所有的服务在启动时间得到期望值。 现在,我不确定对服务器的影响,以及在这个/ etc / sysconfig / init文件中应该忽略哪些configuration。 上面提到的这个文件或方法也有其他的select。

如何限制Apache的subprocess内存使用情况?

– 是的,这个简单的问题。 在大脑死亡的mod_XxX(比如mod_php )应用程序中消耗大量内存太容易,所以我只是想知道Apache允许做什么来应对。

在Debian上太多的文件描述符,ulimit -n没有效果

让我把ulimit -n和/etc/security/limits.conf的所有答案都说出来:我试着设置ulimit -n到2048,4096和65535.我已经设置了soft和努力限制所有这些价值观。 ulimit -n显示它已被更改。 但是在运行服务器时,它仍然只能有1024个打开的套接字。 接受与errno 24(太多打开的连接)失败。 经过几个小时的search,在#debian上询问,并在ServerFault上阅读问题,我还没有find解决scheme。 为什么ulimit -n会显示一个数字,但仍然被限制为1024个打开的文件描述符? 一些潜在有用的信息:这个过程是在屏幕上的terminal上开始的。 是的,我已经将pam_limits.so添加到/etc/pam.d/su。 我也将它添加到/etc/pam.d/common-session。 仍然没有运气。

ulimit不反映jenkins奴隶

问题 得到了java.io.IOException: Too many open files通过jenkins在solr索引中java.io.IOException: Too many open files过多。 有一些Googlesearch,发现我们必须在我们正在执行工作的地方设置框的限制。 因此,在规范的linux框中设置ulimit Linux x86_64 GNU/Linux 在以下两种方式中 ulimit -n 1000000 在/etc/security/limits.conf userx soft nofile 1000000 userx hard nofile 1000000 特定 userx是jenkins作业正在执行的用户。 当通过terminal手动执行ssh作为userx时,检查ulimit -n获得10000000 题 但是,当通过jenkins作业执行相同的ulimit -n时,只能获得默认的1024。 任何build议将是很有帮助的?