我有两台配置几乎相同的 CentOS 5 服务器。当我登录并执行时ulimit -u
,在一台机器上我得到unlimited
,而在另一台机器上我得到77824
。
当我运行一个 cron 时:
* * * * * ulimit -u > ulimit.txt
Run Code Online (Sandbox Code Playgroud)
我得到相同的结果 ( unlimited
, 77824
)。
我正在尝试确定这些设置的位置,以便我可以更改它们。他们不是在我的任何配置文件(设置.bashrc
,/etc/profile
等等)。这些无论如何都不会影响 cron )或 in /etc/security/limits.conf
(这是空的)。
我已经搜索了谷歌,甚至做了这么多grep -Ir 77824 /
,但到目前为止没有任何结果。我不明白这些机器怎么会预设有不同的限制。
我实际上想知道的不是这些机器,而是另一台(CentOS 6)机器,它的限制1024
太小了。我需要以更高的限制运行 cron 作业,我知道如何设置它的唯一方法是在 cron 作业本身中。没关系,但我宁愿将它设置为系统范围,这样它就不会那么笨拙了。
谢谢你的帮助。这似乎应该很容易(不是)。
编辑 - 已解决
好的,我想通了。这似乎是 CentOS 6 或我的机器配置的问题。在 CentOS 5 配置上,我可以设置/etc/security/limits.conf
:
* - nproc unlimited
Run Code Online (Sandbox Code Playgroud)
这将有效地更新帐户和 cron 限制。但是,这在我的 CentOS 6 机器中不起作用。相反,我必须这样做:
myname1 - nproc unlimited …
Run Code Online (Sandbox Code Playgroud)