If you are setting up nginx,chances are you will discover your worker_connections is at some low number, such as 1024.
You can’t increase this number unless you increase kernel limit as well.
First of all run cat /proc/sys/fs/file-max to discover your maximum limit.
abc@ubuntu:~$ cat /proc/sys/fs/file-max 1048576 abc@ubuntu:~$ ulimit -n 1024
As you can see there’s plenty of space for improvement. Lets say I want my new ‘ulimit -n’ to read 131072.
abc@ubuntu:~$ sudo nano /etc/sysctl.conf
add
fs.file-max = 131072
run
sudo sysctl -p
edit
sudo nano /etc/security/limits.conf
add
* soft nproc 131072 * hard nproc 131072 * soft nofile 131072 * hard nofile 131072 root soft nproc 131072 root hard nproc 131072 root soft nofile 131072 root hard nofile 131072
sudo nano /etc/pam.d/common-session
add
session required pam_limits.so
And that’s it. Log out and in and try ulimit -n
abc@ubuntu:~$ ulimit -n 131072
Now you can edit nginx as well
events { worker_connections 131072; use epoll; multi_accept on; }
thx this solved my dovecot problem!
This was not sufficient for me. You might also need to do that :
“Modify /etc/systemd/user.conf and /etc/systemd/system.conf with the following line (this takes care of graphical login):
DefaultLimitNOFILE=131072”
see https://superuser.com/questions/1200539/cannot-increase-open-file-limit-past-4096-ubuntu
Thanks for your tips. This is the only blog that worked to increase ulimit for me. The other blogs out there failed to mention fs.file-max settings.
Works!!! Thank you!!!
Not sure why you are doing all those steps but the second
“fs.file-max = 131072”
already broke my amazon machine.
“Server refused our key” came after a reboot and trying to reconnect with putty. I do have plenty of resources on that machine and actually no idea whats the connection to my key.