I followed the below instructions to permanently set ulimit -n which controls the number of open files in ubuntu:
set ulimit
# available limit
user@ubuntu:~$ ulimit -n
1024
To increase the available limit to say 65535
user@ubuntu:~$ sudo vim /etc/sysctl.conf
add the following line to it
fs.file-max = 65535
sudo vim /etc/security/limits.conf
add following lines to it
- soft nproc 65535
- hard nproc 65535
- soft nofile 65535
- hard nofile 65535
root soft nproc 65535
root hard nproc 65535
root soft nofile 65535
root hard nofile 65535
edit the following file
user@ubuntu:~$ sudo vim /etc/pam.d/common-session
add this line to it
session required pam_limits.so
run this to refresh with new config
user@ubuntu:~$ sudo sysctl -p
logout and login and try the following command
user@ubuntu:~$ ulimit -n
65535
It is important to increase the limit, i.e. the max value 65536.
But I also needed these steps:
For me it helped to adjust the /etc/systemd/system.conf and the /etc/systemd/user.conf.
[Manager] DefaultLimitNOFILE=65536
After that, just reload with
sudo systemctl daemon-reexec
then it worked. Maybe this will help someone.