Tengo un init.d
script que inicia una aplicación usando start-stop-daemon --chuid SOME_SYSTEM_USER
. Es decir, la aplicación se ejecuta con un usuario diferente, no root.
El problema es que la aplicación necesita una configuración de límite especial (a saber ulimit -n 64000
), que configuré limits.conf
. Esto funciona bastante bien cuando lo ejecuto directamente desde shell: su - SOME_SYSTEM_USER
+ iniciar aplicación desde shell.
Pero cuando se ejecuta start-stop-daemon --chuid
desde /etc/init.d
, estos límites se ignoran. Entonces la aplicación no funciona, obviamente.
¿Cómo hago start-stop-daemon
para honrar la ulimit
configuración?
Debian Squeeze, 2.6.32-5-686 # 1 SMP sáb 5 de mayo 01:33:08 UTC 2012 i686 GNU / Linux
ulimit
configuración justo antes delstart-stop-daemon
comando. (es decirulimit -n 64000
) ... para los ignorantes como yo.También puede usar el comando 'límite' en el script de inicio.
En el archivo /etc/init/foo.conf, agregue la línea:
El primer 64000 es el límite blando, y el segundo es el límite duro.
Puede encontrar más información aquí: http://upstart.ubuntu.com/cookbook/
fuente