ubuntu16.04 /etc/security/limits.conf 文件说明

limits.conf 作用

  • 文件限制着用户可以使用的最大文件数,最大线程,最大内存等资源使用量。
* soft nofile 655350  #任何用户可以打开的最大的文件描述符数量,默认1024,这里的数值会限制tcp连接
* hard nofile 655350
* soft nproc  655350  #任何用户可以打开的最大进程数
* hard nproc  650000

@student hard nofile 65535
@student soft nofile 4096
@student hard nproc 50  #学生组中的任何人不能拥有超过50个进程,并且会在拥有30个进程时发出警告
@student soft nproc 30
  • soft是一个警告值,而hard则是一个真正意义的阀值,超过就会报错
  • 查看所有用户创建的进程数
ps h -Led -o user | sort | uniq -c | sort -n
  • 查看/设置系统最大打开文件描述符数
cat /proc/sys/fs/file-max
设置
vim /etc/sysctl.conf
fs.file-max = 6553600
  • 查看进程最大打开文件描述符数
ulimit -n (默认是soft limit)
  • 设置进程最大打开文件描述符数
临时生效:ulimit -Sn 10000
永久生效:
vim /etc/security/limits.conf,添加如下内容后重启生效
* soft nofile 1000
* hard nofile 1000
  • 设置nofile的hard limit还有一点要注意的就是hard limit不能大于/proc/sys/fs/nr_open,假如hard limit大于nr_open,注销后将无法正常登录。

  • 查看当前系统使用的打开文件描述符数

cat /proc/sys/fs/file-nr
5320    0       3256998
5320表示:系统已分配使用的打开文件描述符数
0: 第二个数为分配后已释放的(目前已不再使用)
3256998: 等于file-max

ulimt -n 测试系统支持最大值,如果不支持则报错

  • ulimit -u <程序数目>  用户最多可开启的程序数目
ulimit -a 显示当前所有的资源限制
ulimit -H 设置硬件资源限制
ulimit -S 设置软件资源限制
ulimit -n 设置进程最大打开文件描述符数

总结

  • 所有进程打开的文件描述符数不能超过/proc/sys/fs/file-max
  • 单个进程打开的文件描述符数不能超过user limit中nofile的soft limit
  • nofile的soft limit不能超过其hard limit
  • nofile的hard limit不能超过/proc/sys/fs/nr_open
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值