Chinaunix首页 | 论坛 | 博客
  • 博客访问: 353236
  • 博文数量: 77
  • 博客积分: 1447
  • 博客等级: 中尉
  • 技术积分: 885
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-21 21:48
文章分类

全部博文(77)

文章存档

2021年(2)

2020年(2)

2016年(3)

2015年(1)

2014年(4)

2013年(1)

2012年(23)

2011年(15)

2010年(26)

分类:

2011-05-12 11:13:57

首先可以使ulimit -n命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024。
方法一:
修改/etc/security/limits.conf

里面有很详细的注释,比如

* soft nofile 32768
* hard nofile 65536

就可以将文件句柄限制统一改成软32768,硬65536.配置文件最前面的是指domain,设置为星号代表全局,另外你也可以针对不同的用户做出不同的限制

注意.这个当中的硬限制是实际的限制,而软限制,是warnning限制,只会做出warning.其实ulimit命令本身就有分软硬设置,加-H就是硬,加-S就是软
默认显示的是软限制,如果运行ulimit命令修改的时候没有加上的话,就是两个参数一起改变.

生效

修改完重新登录就可以见到.(我的系统是Centos5.1.修改了,重新登录后就立刻生效.可以用ulimit -a 查看确认.)



方法二: 摘至http://blog.csdn.net/zhaiqi618/archive/2010/05/22/5616998.aspx

1. #vi /etc/profile,增加ulimit -HSn 65536
2. #vi /etc/security/limits.conf,为你的用户增加
    user soft nofile 38192
    user hard nofile 65536
3. 重启Shell即可
4. ulimit -a 查看设置是否成功。
5. 查看系统总限制的命令:
   #cat /proc/sys/fs/file-max
6. 查看整个系统目前使用的文件句柄数量命令:
   #cat /proc/sys/fs/file-nr
7. 查找文件句柄问题的时候,还有一个很实用的程序lsof,可以很方便看到某个进程开了哪些句柄:
   #lsof -p pid
8. 某个进程开了几个句柄:
   #lsof -p pid |wc –l
9. 也可以看到某个目录 /文件被什么进程占用了,显示已打开该目录或文件的所有进程信息:
   #lsof path/filename

阅读(3528) | 评论(0) | 转发(0) |
0

上一篇:mysql导文件的命令行

下一篇:跳转

给主人留下些什么吧!~~