是的,我知道这个问题被多次询问,但不幸的是我没有找到完整的答案.
我发现了两个解决方案
>使用pam_limits.在这种情况下,我需要配置/etc/security/limits.conf文件.遗憾的是,此解决方案仅适用于pam感知应用程序,即它不是通用的.
>使用从$HOME / profile调用的ulimit.不幸的是,它在所有情况下都不起作用.我试图设置“ulimit -u 100”,然后在相同的shell中启动“stress –vm 200 –vm – bytes 100”.应用程序已成功启动,我在用户root下获得了200多个进程.
我需要构建一个强大的系统,因此仅在某些情况下有效的解决方案是不合适的.
解决方法
内核安全修补程序
grsecurity在execs上有一个名为Enforce RLMIT_NPROC的功能.启用后,它会强制每个用户限制为系统范围而不是每次登录(或者更糟糕的是,正如您所观察到的那样).