unix – 如何为非root用户设置’每个进程的最大线程数’ulimit?

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,然后限制被继承.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...