查看默认的限制数量:
# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 7683
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 4096
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 7683
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
ulimit的选项:
-a: 显示目前资源限制的设定。
-c <core文件上限>: 设定core文件的最大值,单位为区块。
-d <数据节区大小>: 程序数据节区的最大值,单位为KB。
-f <文件大小>: shell所能建立的最大文件,单位为区块。
-H: 设定资源的硬性限制,也就是管理员所设下的限制。
-m <内存大小>: 指定可使用内存的上限,单位为KB。
-n <文件数目>: 指定同一时间最多可打开的文件数。
-p <缓冲区大小>: 指定管道缓冲区的大小,单位512字节。
-s <堆栈大小>: 指定堆叠的上限,单位为KB。
-S: 设定资源的弹性限制。
-t <CPU时间>: 指定CPU使用时间的上限,单位为秒。
-u <进程数目>: 用户最多可启动的进程数目。
-v <虚拟内存大小>: 指定可使用的虚拟内存上限,单位为KB。
ulimit中显示的数值的配置文件:
/etc/security/limits.conf 是 Linux 资源使用配置文件,用来限制用户对系统资源的使用
语法:<domain> <type> <item> <value>
[root@localhost ~]# cat /etc/security/limits.conf
* soft nproc 65535 # 警告设定所有用户最大打开进程数为65535
* hard nproc 65535 # 严格设定所有用户最大打开进程数为65535
* soft nofile 65535 # 警告设定所有用户最大打开文件数为65535
* hard nofile 65535 # 严格设定所有用户最大打开文件数为65535
各个参数的详解:
<domain> 表示要限制的用户,可以是:
① 用户名
② 组名(组名前面加'@'以区别用户名)
③ *(表示所有用户)
<type> 有两个值:
① soft 表示警告的设定,可以超过这个设定值,但是超过会有警告信息
② hard 表示严格的设定,必定不能超过这个设定的值
<item> 表示可选的资源,如下:
① core:限制内核文件的大小
② data:最大数据大小
③ fsize:最大文件大小
④ memlock:最大锁定内存地址空间
⑤ nofile:打开文件的最大数目
⑥ rss:最大持久设置大小
⑦ stack:最大栈大小
⑧ cpu:以分钟为单位的最多CPU时间
⑨ nproc:进程的最大数目
⑩ as:地址空间限制
<value> 表示要限制的值
另一种方法:
编辑/etc/profile或者/etc/profile.d/目录下面新建shell脚本,添加如下命令即可:
# vim /etc/profile.d/ulimit.sh
ulimit -n 65535
重启一个终端,查看的时候就已经是:
# ulimit -n
65535
转载请注明:liutianfeng.com » ulimit -n永久生效的配置方法
发表回复
要发表评论,您必须先登录。