Increase file ulimit for the asterisk daemon

How do i increase the file limit for the asterisk daemon on my ubuntu computer? When I login as root and use the ulimit, it says unlimited already. I can't login as asterisk because that user doesn't have shell access, it's just a daemon.

I can see in /proc/<asterisk proc id>/limits the current Max open files is 1024. I want to double that.

I even went into /etc/security/limit.conf and added

asterisk soft nofile 2048
asterisk hard nofile 2048
@asterisk soft nofile 2048
@asterisk hard nofile 2048

THen I reboot server. Still, the max open files is 1024.

What else can I do?


Solution 1:

You could always edit the /etc/init.d/asterisk file and prepend ulimit -n 2048 to the top.

This is the same process that MySQL, Varnish and a few others use.

Solution 2:

For Asterisk running under systemd (e.g. on Debian 9), you need to create a systemd override file:

mkdir /etc/systemd/system/asterisk.service.d/

Create /etc/systemd/system/asterisk.service.d/override.conf with the following contents:

[Service]
LimitNOFILE=100000

Reload the unit:

systemctl daemon-reload

Restart Asterisk:

systemctl restart astertisk

Check the limit:

cat /proc/<your asterisk PID>/limits | grep '^Max open files'

Solution 3:

I had this exact issue for anyone stumbling across this in the future (is it chrome?)

The system that I was having the issue on was Debian rather than Ubuntu, but hey, close enough.

I had to use the following in '/etc/security/limits.conf' to get it working, as specifying the user & group didn't work.

*               soft    nofile          10240
*               hard    nofile          10240

Logging in and out again applies this change.

Solution 4:

In Asterisk 11 (I've not checked others) this is set with the maxfiles directive in the [general] section of asterisk.conf. None of the other answers worked for me on Debian.

Solution 5:

It is better to edit the configurations in /usr/sbin/safe_asterisk instead on editing init.d script.

you can set many parameters (PRIORITY, SYSMAXFILES, MAXFILES ...). Uncomment SYSMAXFILES and MAXFILES; and increase their values.