Ulimit手册页建议-r选项会设置这个,但它似乎只对root用户有效,并且没有通过/ etc / security / limits设置它的等价物?
有任何想法吗?
你说AIX,但在
linux的情况下,我认为它只是-u限位开关.在
Linux中,这表示’进程’,但是使用bash,ulimit只是setrlimit系统调用的接口.这可以通过运行strace bash -c’ulimit -u 10’看到,它返回:
setrlimit(RLIMIT_NPROC,{rlim_cur=10,rlim_max=10}) = 0
setrlimit的手册页说明:
RLIMIT_NPROC
The maximum number of processes (or,more precisely on
Linux,
threads) that can be created for the real user ID of the
calling
process. Upon encountering this limit,fork(2) fails
with the
error EAGAIN.
那么对AIX来说可能是一样的吗? This link声明:“AIX没有定义RLIMIT_NPROC或RLIMIT_MEMLOCK资源.”,但您可以在developerworks上找到更明确的答案.
对于权限问题,解决方案可能是使用root设置限制,然后su为用户增加限制.我必须在过去为其他资源限制执行此操作,例如,max open files. limits.conf没有应用,所以我从root用户使用了sudo或su,然后限制被继承.