Al menos en Linux, la mayoría de las distribuciones parecen usar pam para la autenticación. Un módulo que viene con pam es el módulo de límites . Citando el archivo 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.
Como resultado, puede establecer límites por usuario, por grupo y predeterminados, en ambas categorías (la raíz establece esto y el proceso no puede solicitar mayores) y límites suaves. Los límites suaves generalmente se establecen más bajos que los límites estrictos, y la aplicación puede aumentarlo hasta alcanzar el límite rígido.
En su caso, si el proceso que desea aumentar los límites de las ejecuciones como usuario normal, puede aumentar los límites para ese usuario o grupo. Como ejemplo, tengo algunos trabajos cron de mysql en algunos servidores que requieren la apertura de identificadores de archivos adicionales, así que configuré esto:
$ cat /etc/security/limits.d/mysql.conf
@mysql soft nofile 100000
@mysql hard nofile 200000
No hay nada que deba reiniciarse; cuando le solicitas a ese usuario, puedes ver de inmediato que los nuevos límites entran en vigencia.
Otra cosa que puede hacer si está en un sistema derivado de RedHat típico es colocar la llamada ulimit que desea en el script / etc / sysconfig / $ SERVICE. Como ejemplo, el script de inicio de apache se llama /etc/init.d/httpd y, si se encuentra, obtiene el archivo de configuración / etc / sysconfig / httpd. He encontrado que es más fácil de administrar haciendo esto en lugar de editar el script de inicio en sí porque los scripts de inicio se actualizan cuando se actualizan las rpm, pero los archivos sysconfig solo se actualizan si no se cambian de manera predeterminada.