This is happening on Ubuntu Release 12.04 (precise) 64-bit Kernel Linux 3.2.0-25-virtual
I'm trying to increase the number of open files allowed for a user. This is for my eclipse java application where the current limit of 1024 is not enough.
According to the posts I've found so far, I should be able to put lines into
/etc/security/limits.conf like this:
soft nofile 4096 hard nofile 4096
to increase the number of open files allowed for all users.
But that's not working for me and I think the problem is not related to that file.
For all users, the default limit is 1024, regardless of what is in /etc/security/limits.conf (I rebooted after changing that file)
$ ulimit -n 1024
Now, despite the entries in /etc/security/limits.conf I can't increase that:
$ ulimit -n 2048
-bash: ulimit: open files: cannot modify limit: Operation not permitted The weird part is that I can change the limit downwards, but can't change it upwards - even to go back to a number which is below the original limit:
$ ulimit -n 800 $ ulimit -n 800 $ ulimit -n 900 -bash: ulimit: open files: cannot modify limit: Operation not permitted
As root, I can change that limit to whatever I want, up or down. It doesn't even seem to care about the supposedly system-wide limit in /proc/sys/fs/file-max
# cat /proc/sys/fs/file-max 188897 # ulimit -n 188898 # ulimit -n 188898
But even I get eclipse to run as root, my application still crashes because of "Too Many Open File" exception!
So far, I haven't found any way to increase the open files limit for a non-root user.
How should I properly do this? I have looked at several other posts but no luck!
/etc/security/limits.conf, you may have to logout and then back in before you can use the new max limit. I did this, and was baffled by
ulimit -Hsstill showing 1000 when I had just raised it to 1000000! Then I logged out and back in, and ulimit showed the new amount.