# How to Change Open File Limit in Linux

> URL: https://www.atlantic.net/vps-hosting/how-to-change-open-file-limit-in-linux/ | Published: 2022-05-05 | Updated: 2023-11-21 | Author: Hitesh Jethva

If you are a Linux user and work with many files at a time, then you may often face the error **“Too many open files”** on Linux. This is because you have reached the maximum open file limit set by Linux operating system. In this case, you can use the **ulimit** command to change the default limit set by the operating system.

The max open file limit is very useful to prevent your system from sudden crashes. There are two types of open file limits in Linux.

- **Hard Limit:** This limit can only be modified by the root user.
- **Soft Limit:** This limit can be modified by any normal user. It indicates the current value of the session or user.

In this post, we will show you how to change the open file limit on Linux.

## Check Open File Limits in Linux

To check the number of files that a user can have opened per login session, run the following command:

```
cat /proc/sys/fs/file-max
```

You will get the following output:

```
752300
```

The above result may be different based on the operating system.

To check the hard limit, run the following command:

```
ulimit -Hn
```

You will get the following output:

```
4096
```

To check the soft limit, run the following command:

```
ulimit -Sn
```

You will get the following output:

```
1024
```

To check all limits set by the operating system, run the following command:

```
ulimit -a
```

You will get the following output:

```
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 29405
max locked memory       (kbytes, -l) 65536
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 29405
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
```

**Also Read**

[How to Check Linux CPU Usage or Utilization](https://www.atlantic.net/vps-hosting/how-to-check-linux-cpu-usage-or-utilization/)

## Change Open File Limits in Linux Temporarily

In this section, we will show you how to change the open file limits temporarily.

To set the hard limit to **10000** temporarily, run the following command:

```
ulimit -Hn 10000
```

To set the soft limit to **10000** temporary, run the following command:

```
ulimit -Sn 10000
```

The above limits remain modified temporarily till the current session.

## Change Open File Limits in Linux Permanently

You can edit the **/etc/security/limits.conf** file to set the open file limits permanently.

Edit the /etc/security/limits.conf file as shown below:

```
nano /etc/security/limits.conf
```

Change the hard limits to **10000** for all users, add the following line:

```
* hard nofile 10000
```

Change the soft limits to **10000** for all users, add the following line:

```
* soft nofile 10000
```

If you want to set the limit only for a specific user, add the following line:

```
user1 hard nofile 8000
```

Save and close the fil,e then log out and log back again to apply the changes.

You can now check the new limits using the following command:

```
ulimit
```

**Also Read**

[How to Set Up an Rsync Daemon on Your Linux Server](https://www.atlantic.net/vps-hosting/how-to-setup-rsync-daemon-linux-server/)

## Conclusion

In this guide, we explained how to see and set the open file limits on Linux. If you are running the Apache webserver or Oracle database server then you may require a higher open file limit. In this case, you can increase the open file limit to prevent your application from crashing. Try it on [VPS hosting](https://www.atlantic.net/vps-hosting/) from Atlantic.Net!
