linux 用户打开进程数和文件数调整

时间:2022-04-16 07:32:33

1 查看nproc(max user processes)命令

[root@vm-cdh4 ~]# ulimit -u
14866

2 修改nproc

临时修改, 重登录或重启后失效:

[root@vm-cdh4 ~]# ulimit -u 32768
[root@vm-cdh4 ~]# ulimit -u

32768

尝试在 /etc/security/limits.conf 中加入下面的配置:

*    soft    nproc     32768

退出当前用户, 重登录或重启后, 查看发现配置仍然失效.

继续尝试在 /etc/security/limits.d/90-nproc.conf 中加入配置:

*    soft    nproc     65536

退出当前用户, 重登录或重启后, 查看发现配置仍然失效.

继续尝试在 /etc/security/limits.d/90-nproc.conf 中加入配置:

* soft nproc 65536
* hard nproc 65536

重登录或重启后, 查看发现配置生效. 可见hard nproc起作用.

3 结论

临时修改(shell中不受限制, xxx可以是任何数, 说明这个修改没有意义):

# ulimit -u xxx

永久修改, 保险的做法是同时修改/etc/security/limits.d/90-nproc.conf/etc/security/limits.conf如下:

limits_conf = /etc/security/limits.conf:

*   soft   nproc    s1
* hard nproc h1

nproc_conf = /etc/security/limits.d/90-nproc.conf:

*   soft    nproc    s2
* hard nproc h2

s1,h1,s2,h2必须是具体有意义的数. 此时ulimit -u显示的值为=min(h1,h2)

因此通常就设置s1=s2=h1=h2, 例如在limits_confnproc_conf中同时加入:

*   soft   nproc   16384
* hard nproc 16384 修改用户打开文件数

vim /etc/security/limits.conf

增加:

* soft nofile 409600

* hard nofile 409600