No Linux, pelo menos, a maioria das distros parece usar o pam para autenticação. Um módulo que vem com o pam é o módulo de limites . Citando o README para pam_limits:
The pam_limits PAM module sets limits on the system resources that can be obtained in a user-session. Users of uid=0 are affected by this limits, too.
As a result, you can set per user, per group, and default limits, in both categories hard (root sets this and the process cannot request higher) and soft limits. The soft limits are typically set lower than the hard limits, and the app can increase it upwards until it hits the hard limit.
No seu caso, se o processo que você deseja aumentar os limites de execuções como um usuário comum, você pode aumentar os limites para esse usuário ou grupo. Como exemplo, eu tenho alguns trabalhos mysql cron em alguns servidores que exigem que identificadores de arquivos extras sejam abertos, então defino isso:
$ cat /etc/security/limits.d/mysql.conf
@mysql soft nofile 100000
@mysql hard nofile 200000
Não há nada que precise ser reiniciado; quando você processa esse usuário, pode ver imediatamente que os novos limites entram em vigor.
Outra coisa que você pode fazer se estiver em um sistema derivado do RedHat típico é colocar a chamada ulimit que você deseja no script / etc / sysconfig / $ SERVICE. Como exemplo, o script init do apache é nomeado /etc/init.d/httpd, e ele origina o arquivo de configuração / etc / sysconfig / httpd, se encontrado. Achei mais fácil gerenciar isso, em vez de editar o próprio script init, porque os scripts init são atualizados quando o rpm é atualizado, mas os arquivos sysconfig são atualizados apenas se não forem alterados do padrão.