Siempre puedes editar el /etc/init.d/asterisk
archivo y anteponer ulimit -n 2048
hacia arriba.
Este es el mismo proceso que usan MySQL, Varnish y algunos otros.
Para que Asterisk se ejecute en systemd (por ejemplo, en Debian 9), debe crear un archivo de anulación de systemd:
mkdir /etc/systemd/system/asterisk.service.d/
Crear /etc/systemd/system/asterisk.service.d/override.conf
con los siguientes contenidos:
[Service]
LimitNOFILE=100000
Recargar la unidad:
systemctl daemon-reload
Reiniciar asterisco:
systemctl restart astertisk
Compruebe el límite:
cat /proc/<your asterisk PID>/limits | grep '^Max open files'
Tuve exactamente este problema para cualquiera que se encuentre con esto en el futuro (¿es Chrome?)
El sistema en el que estaba teniendo problemas era Debian en lugar de Ubuntu, pero bueno, lo suficientemente cerca.
Tuve que usar lo siguiente en '/etc/security/limits.conf' para que funcionara, ya que especificar el usuario y el grupo no funcionó.
* soft nofile 10240
* hard nofile 10240
Al iniciar y cerrar sesión nuevamente, se aplica este cambio.