mac OSX 下修改 ulimit 参数

OSX下Leopard, Yosemite版本的操作系统下, 修改 ulimit 命令默认的程序是 launchd.

默认的ulimit命令继承自launchd, 默认的limits参数如下:

daviddeMacBook-Pro:etc david$ sudo launchctl limit

Password:

cpu         unlimited      unlimited      

filesize    unlimited      unlimited      

data        unlimited      unlimited      

stack       8388608        67104768       

core        0              unlimited      

rss         unlimited      unlimited      

memlock     unlimited      unlimited      

maxproc     709            1064           

maxfiles    256            unlimited

如果因为如socket连接数过小等原因, 需要修改ulimit相关参数, 可以按照如下方式操作:

1. 在 /etc/launchd.conf(如无, 需用拥有root权限的账户创建) 文件中, 增加这一行:

echo "limit maxfiles 65535 unlimited" | sudo tee -a /etc/launchd.conf


tee命令是等待用户输入, 并将输入写入到指定文件中, -a参数表示添加方式为"追加".

2. 在本次会话中, lanuchd 命令已经启动了; 如果想让配置在任何用户任何会话中都生效, 最简单的方式就只需要重启一下server.

如果还需要修改其他参数, 只需要使用 >> 命令追加到 /etc/launchd.conf文件中即可.


注:

----------------------------------------------------

1. 上面

65535 unlimited

这2个参数即是设置soft和hard值.

2. Linux发行版redhat/centos配置与osx不同,如下:

vi /etc/security/limits.conf
# noproc进程数,nofile文件打开数
# soft软限制, 在程序的进程中可自行改变.
# hard硬限制, 程序不可随意改变,除非有root权限.
* soft noproc 11000
* hard noproc 11000
* soft nofile 4100
* hard nofile 4100

你可能感兴趣的:(Linux)