ulimit
ulimit 是一个计算机命令,用于shell启动进程所占用的资源,参数形式有-H设置硬资源限制;-S 设置软资源限制;-a 显示当前所有的资源限制等。
语法格式:
ulimit [-acdfHlmnpsStvw] [size] -H 设置硬资源限制. -S 设置软资源限制. -a 显示当前所有的资源限制. -c size:设置core文件的最大值.单位:blocks -d size:设置数据段的最大值.单位:kbytes -f size:设置创建文件的最大值.单位:blocks -l size:设置在内存中锁定进程的最大值.单位:kbytes -m size:设置可以使用的常驻内存的最大值.单位:kbytes -n size:设置内核可以同时打开的文件描述符的最大值.单位:n -p size:设置管道缓冲区的最大值.单位:kbytes -s size:设置堆栈的最大值.单位:kbytes -t size:设置CPU使用时间的最大上限.单位:seconds -v size:设置虚拟内存的最大值.单位:kbytes -u <程序数目> 用户最多可开启的程序数目 -n 和 -u 可以查看linux的最大进程数和每个进程最大打开文件数。
设置大小(当前登陆终端有效)
ulimit -n 10240 ulimit -u 10240
修改/etc/security/limits.conf 文件进行设置
* soft nofile 204800 * hard nofile 204800 * soft nproc 204800 * hard nproc 204800 * 代表针对所有用户 noproc 是代表最大进程数 nofile 是代表最大文件打开数
设置成无限制(unlimited)的一些重要设置是:
数据段长度:ulimit -d unlimited 最大内存大小:ulimit -m unlimited 堆栈大小:ulimit -s unlimited CPU 时间:ulimit -t unlimited 虚拟内存:ulimit -v unlimited
有的根据系统未生效 需要更改两个;
1、/etc/security/limits.d/90-nproc.conf 文件尾添加
* soft nproc 204800 * hard nproc 204800
2、/etc/security/limits.d/def.conf 文件尾添加
* soft nofile 204800 * hard nofile 204800
这两个文件的设置将会覆盖前面的设置。重启后生效。