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_conf和nproc_conf中同時加入:
* soft nproc 16384 * hard nproc 16384
修改用戶打開文件數
vim /etc/security/limits.conf
增加:
* soft nofile 409600
* hard nofile 409600