在非交互式用户上强制nproc ulimit

我有一个脚本,可以通过php-fpm同时启动n次。 php-fpm池被设置为在某个用户名下运行,我想限制这个用户名可以启动的进程数量。

ps aux|grep fpm root 7165 0.0 0.0 849288 27872 ? Ss 05:47 0:00 php-fpm: master process (/etc/php5/fpm/php-fpm.conf) myuser 7167 4.6 0.1 872512 77148 ? S 05:47 0:31 php-fpm: pool myapp #pool I want to limit www-data 7172 0.2 0.1 863248 62904 ? S 05:47 0:01 php-fpm: pool www #default pool 

这是通过php-fpm启动的过程如下所示:

 37192 myuser 20 0 347m 53m 10m S 13 0.1 0:00.38 php -f /var/www/html/myscript.php 

在Ubuntu上。 我已经在/etc/security/limits.conf设置了:

 myuser soft nproc 10 myuser hard nproc 10 

并且还在/etc/pam.d/common-session-noninteractive包含了session required pam_limits.so ,但限制不适用:

 cat /proc/$(ps aux|grep "php -f /var/www/html/myscript"|awk '{print $2}'|head -n1)/limits Limit Soft Limit Hard Limit Units Max processes 385951 385951 processes 

如果我su作为用户,它的作品:

 su -s /bin/bash myuser ulimit -u 10 

是什么赋予了?