≡ Menu

Linux: Find Out Open Files [ Descriptors ] Command

How do I find out that how many files are open and how many allowed in Linux server operating systems?

By default Linux kernel place an limit (for security purpose) on how many open file descriptors are allowed on the Linux server or desktop system. The /proc/sys/fs/file-nr is a read-only file and provides the the number of files presently opened.

Task: Find How Many Open Files?

To see current status, enter:
$ cat /proc/sys/fs/file-nr
$ /sbin/sysctl fs.file-nr
Sample outputs:

fs.file-nr = 6272	0	70000

The above output contains three numbers as follows:

  1. 6272: The number of allocated file handles.
  2. 0: The number of free file handles.
  3. 70000: The maximum number of file handles.

The Linux kernel allocates file handles dynamically, but it doesn't free them again. If the number of allocated files is close to the maximum, you should consider increasing the maximum open file by editing /etc/sysctl.conf file.

{ 2 comments… add one }

  • @jaskoslaff January 4, 2012, 9:44 pm

    debian mini-server: 832 0 76332
    kubuntu workstation: 8672 0 303102

    What scenarios have you encountered when this needs to be elevated?

    Thanks for all the amazing posts!

    • nixCraft January 6, 2012, 11:20 am

      You may get an error as follows:

      Too many open files

      In that case you need to find out exact limits and current open files / fds.

Leave a Comment

   Tagged with: , , , , , , , , , , ,