linux系统最大打开文件数修改

1. 按照最大打开文件数量的需求设置系统,并且通过检查/proc/sys/fs/file-max文件来确认最大打开文件数已经被正确设置。

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

如果设置值太小,修改文件/etc/sysctl.conf的变量到合适的值。这样会在每次重启之后生效。如果设置值够大,跳过直接操作第2步。

 # echo 2048 > /proc/sys/fs/file-max
编辑文件/etc/sysctl.conf,插入下行。 fs.file-max = 2048

2. /etc/security/limits.conf文件中设置最大打开文件数,在最后一行添加 

 * - nofile 2048

   配置完成后使用sysctl -p来通知系统启用这项配置 

# sysctl -p

   这行设置了每个用户的默认打开文件数为2048注意"nofile"项有两个可能的限制措施。就是<type>项下的hardsoft要使修改过得最大打开文件数生效,必须对这两种限制进行设定。如果使用"-"字符设定<type>, hardsoft设定会同时被设定。

硬限制表明soft限制中所能设定的最大值。 soft限制指的是当前系统生效的设置值。 hard限制值可以被普通用户降低。但是不能增加。 soft限制不能设置的比hard限制更高。只有root用户才能够增加hard限制值。

当增加文件限制描述,可以简单的把当前值双倍。例子如下,如果你要提高默认值1024最好提高到2048如果还要继续增加,就需要设置成4096

3.Add the following line to the /etc/pam.d/login and /etc/pam.d/xdm file, if it does not already exist:
session required /lib/security/pam_limits.so

4. logout and logon

或者在shell配置文件里面动态加载。如.bashrc里加:
ulimit -HSn 2048

猜你喜欢

转载自myjcwy.iteye.com/blog/1978496