您的位置:首页 > 运维架构 > Linux

Linux ulimit 命令

2016-02-14 13:54 483 查看
下面红字部分最大打开文件数1024个,正常来讲这个值有点小。

[root@localhost ~]# 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) 15213

max locked memory       (kbytes, -l) 64

max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024

pipe size            (512 bytes, -p) 8

POSIX message queues     (bytes, -q) 819200第一步:配置/etc/security/limits.conf

real-time priority              (-r) 0

stack size              (kbytes, -s) 10240

cpu time               (seconds, -t) unlimited

max user第一步:配置/etc/security/limits.conf processes              (-u) 15213

virtual memory          (kbytes, -v) unlimited

file locks                      (-x) unlimited

或者用ulimit -n查看

[root@localhost ~]# ulimit -n

1024


若要改变其值,设置方法如下:

第一步:配置/etc/security/limits.conf

vim /etc/security/limits.conf
文件结尾追加
* hard nofile 40960
* soft nofile 40960 


第一列,可以是用户,也可以是组,要用@group这样的语法,也可以是通配符如*%

第二列,两个值:hard,硬限制,soft,软件限制,一般来说soft要比hard小,hard是底线,决对不能超过,超过soft报警,直到hard数

第三列,见列表,打开文件数是nofile

第四列,数量,这个也不能设置太大

注意:

要使limits.conf文件配置生效,必须要确保 pam_limits.so文件被加入到启动文件中。

查看 /etc/pam.d/login 文件中有:(没有就添加)

session required /lib/security/pam_limits.so

注意:

好多人设置了limitc.conf没有测试,测试后发现没有生效,原因大多数为:

32位系统 session required /lib/security/pam_limits.so

64位系统 session required /lib64/security/pam_limits.so

第二步:/etc/pam.d/su(官方)

<span style="font-size:14px;">vim /etc/pam.d/su
将 pam_limits.so 这一行注释去掉
重起系统</span>


第三步:配置/etc/profile

行尾加上如下语句

<span style="font-size:14px;">ulimit -SHn 40960</span>

第四步:重启

ulimit -n 验证,显示40960就没问题了

CentOS 6.5上,只要修改/etc/security/limits.conf,重新登录就OK了。

ubuntu系统上需要执行第三步,才可以。

系统之间稍微有些差异,





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: