关于ulimit的用法网络上很多,我汇总一些我自己的经验如下
ulimit语法: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
- unlimited 是一个特殊值,用于表示不限制
示例:
1)ulimit -a的结果,在csh下为
- home%ulimit -a
- 时间(秒) 没有限制
- 文件(块) 没有限制
- 数据(千字节) 没有限制
- 栈(千字节) 8192
- 信息转储(块) 没有限制
- 文件数(描述符) 4096
- vmemory(千字节) 没有限制
- home%
修改文件数(open file)大小示例
ulimit -HSn 4096
H-hard
S-soft
这只是临时生效,如果要长久生效,需要在root的环境变量上去(/etc/profile)
2)ulimit -a的结果,在bash下为
- home%ulimit -a
- core file size (blocks, -c) unlimited
- data seg size (kbytes, -d) unlimited
- file size (blocks, -f) unlimited
- open files (-n) 4096
- pipe size (512 bytes, -p) 10
- stack size (kbytes, -s) 8192
- cpu time (seconds, -t) unlimited
- max user processes (-u) 29995
- virtual memory (kbytes, -v) unlimited
- home%
修改open file大小的示例为
ulimit -n 4096
建议写到.bash_profile文件里面去。
本文出自 “Focus on Oracle” 博客,请务必保留此出处http://alexy.blog.51cto.com/6115453/1036993