"soft" 和 "hard" 的區別
soft xxx : 代表警告的設定,可以超過這個設定值,但是超過后會有警告。
hard xxx : 代表嚴格的設定,不允許超過這個設定的值。
如:soft 設為1024,hard設為2048 ,則當你使用數在1~1024之間時可以隨便使用,1024~2048時會出現警告信息,大於2048時,就會報錯。
"nproc" 和 "nofile"的區別
nproc : 是操作系統級別對每個用戶創建的進程數的限制
nofile : 是每個進程可以打開的文件數的限制
修改系統的配置
打開/etc/security/limits.conf (部分的系統是在/etc/security/limits.d/90-nproc.conf)
設置限制數量,第一列表示用戶,* 表示所有用戶
soft nproc :單個用戶可用的最大進程數量(超過會警告);
hard nproc:單個用戶可用的最大進程數量(超過會報錯);
soft nofile :可打開的文件描述符的最大數(超過會警告);
hard nofile :可打開的文件描述符的最大數(超過會報錯);
重啟后生效
reboot
注:①一般soft的值會比hard小,也可相等。
②/etc/security/limits.d/里面配置會覆蓋/etc/security/limits.conf的配置
③只有root用戶才有權限修改/etc/security/limits.conf
④如果limits.conf沒有做設定,則默認值是1024
file-max是內核可分配的最大文件數,nr_open是單個進程可分配的最大文件數,所以在我們使用ulimit或limits.conf來設置時,如果要超過默認的1048576值時需要先增大nr_open值(sysctl -w fs.nr_open=100000000或者直接寫入sysctl.conf文件)。當然百萬級別的單進程最大file-handle打開數應該也夠用了吧。。
所有進程打開的文件描述符數不能超過/proc/sys/fs/file-max
單個進程打開的文件描述符數不能超過user limit中nofile的soft limit
nofile的soft limit不能超過其hard limit
nofile的hard limit不能超過/proc/sys/fs/nr_open
————————————————
版權聲明:本文為CSDN博主「zxl技術博客」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/zxljsbk/article/details/89153690