关于ulimit -a 显示的文件打开句柄数的含义
来源:互联网 发布:淘宝刷客 编辑:程序博客网 时间:2024/05/04 10:42
关于ulimit -a 显示的文件打开句柄数的含义来源: ChinaUnix博客 日期: 2007.08.17 09:50 (共有条评论) 我要评论 ulimit 我经常用了,还经常设置一些参数,尤其是open file,当时的理解是:openfile设置为多大,此用户就只能最大打开这么多文件。我还经常给客户讲课,尤其是邮政的客户,讲课我都是这么讲的。我纳闷这到底是谁最先告诉我是这么解释的?
[fante@fante ~]$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
max nice (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 3959
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
max rt priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 3959
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
file locks (-x) unlimited
昨天才知道确切的意义:在Linux下,我们使用ulimit -n 命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024。
以前也遇到过,某些用户比如weblogic用户,登录后提示“too many files open”,原来是某个进程打开的文件数过多。这个进程是由哪个用户打开的,需要修改这个用户的“open file”参数。
下面命令可以看到系统中进程打开文件数的一个排序:
lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more
[root@lvs191 ~]# lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more
64 18563
63 18632
63 18583
62 18617
61 18561
60 18565
[root@lvs191 ~]# ps -ef|grep 18563
oracle 18563 1 0 Aug15 ? 00:00:07 ora_lgwr_orcl
其中第一行是打开的文件句柄数量,第二行是进程号。得到进程号后,我们可以通过ps命令得到进程的详细内容。可以查看到这个18563的进程是oracle的一个进程。
一般情况下http一类的进程可能会打开文件数比较大,这样就需要将“open file”参数调大即可:
ulimit -HSn 4096
Linux有硬性限制和软性限制。可以通过ulimit来设定这两个参数。H指定了硬性大小,S指定了软性大小,n表示设定单个进程最大的打开文件句柄数量。
如果想让用户登录即修改“open file”参数,有两种方法:
1、修改系统配置文件/etc/security/limits.conf,在最后添加
work soft nofile 4096
work soft nofile 4096
2、将命令添加到/etc/profile组后,这样所有用户登录都会改变
[fante@fante ~]$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
max nice (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 3959
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
max rt priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 3959
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
file locks (-x) unlimited
昨天才知道确切的意义:在Linux下,我们使用ulimit -n 命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024。
以前也遇到过,某些用户比如weblogic用户,登录后提示“too many files open”,原来是某个进程打开的文件数过多。这个进程是由哪个用户打开的,需要修改这个用户的“open file”参数。
下面命令可以看到系统中进程打开文件数的一个排序:
lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more
[root@lvs191 ~]# lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more
64 18563
63 18632
63 18583
62 18617
61 18561
60 18565
[root@lvs191 ~]# ps -ef|grep 18563
oracle 18563 1 0 Aug15 ? 00:00:07 ora_lgwr_orcl
其中第一行是打开的文件句柄数量,第二行是进程号。得到进程号后,我们可以通过ps命令得到进程的详细内容。可以查看到这个18563的进程是oracle的一个进程。
一般情况下http一类的进程可能会打开文件数比较大,这样就需要将“open file”参数调大即可:
ulimit -HSn 4096
Linux有硬性限制和软性限制。可以通过ulimit来设定这两个参数。H指定了硬性大小,S指定了软性大小,n表示设定单个进程最大的打开文件句柄数量。
如果想让用户登录即修改“open file”参数,有两种方法:
1、修改系统配置文件/etc/security/limits.conf,在最后添加
work soft nofile 4096
work soft nofile 4096
2、将命令添加到/etc/profile组后,这样所有用户登录都会改变
- 关于ulimit -a 显示的文件打开句柄数的含义
- 关于ulimit -a 显示的文件打开句柄数的含义
- 修改打开文件的句柄数限制
- 获取进程打开的文件句柄数
- AIX上ulimit -a 输出的含义
- AIX上ulimit -a 输出的含义
- 设置Linux打开文件句柄/proc/sys/fs/file-max和ulimit -n的区别
- 关于windows句柄的含义
- ulimit的修改(主要修改可以打开的文件数和进程数)
- 一个进程能够打开最大文件句柄数的设置
- Linux下查看进程打开的文件句柄数
- Linux下查看进程打开的文件句柄数
- Windows系统进程打开文件句柄数的限制
- 系统进程打开文件最大句柄数的限制
- 系统进程打开文件最大句柄数的限制
- Linux下查看进程打开的文件句柄数
- Linux 打开文件件句柄数的问题
- Linux下查看进程打开的文件句柄数
- 常用的功能测试方法
- java 内存调优
- Wi n d o w s函数l s t r c m p和l s t r c m p i是作为对Wi n d o w s函数 C o m p a r e S t r i n g的调用来实现
- Oracle 表空间 用户和权限控制相关思考
- 什么是OPC
- 关于ulimit -a 显示的文件打开句柄数的含义
- java内存分区
- Hibernate优化
- 常用的软件性能测试方法(策略)和测试要点有哪些
- 指针引用
- Linux /etc/profile文件详解
- webbench
- PCA+SVM代码
- iOS6、Android4.1、WP8三大系统PK