linux下查看系统进程占用的句柄数

查看系统默认句柄数:


[root@server-deve ~]# ulimit -n

65535

[root@server-deve ~]#


查看当前系统打开的句柄数

[root@server-deve ~]# lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr|more

    553 26093

    205 22235

    175 25323

    142 23897

    125 1020

    113 6857

     79 3570

     61 30939

     58 19726

     53 30940

     51 3567

     50 3566

     49 3569

     49 30931

     48 3568

     46 1047

     46 10106

     36 6633

     26 22014

其中第一列是打开的句柄数,第二列是进程ID。

可以根据ID号来查看进程名。


[root@server-deve ~]# ps -ef|grep 26093

root     20487 19730  0 21:12 pts/2    00:00:00 grep 26093

root     26093     1 30  2015 ?        134-22:26:50 ./mongod -f /AEApps/mongodb/conf/r2.conf 


Linux有硬性限制和软性限制。可以通过ulimit来设定这两个参数。方法如下,以root用户运行以下命令:

# ulimit -HSn 4096

以上命令中,H指定了硬性大小,S指定了软性大小,n表示设定单个进程最大的打开文件句柄数量。个人觉得最好不要超过4096,毕竟打开的文件句柄数越多响应时间肯定会越慢。设定句柄数量后,系统重启后,又会恢复默认值。如果想永久保存下来,可以修改.bash_profile文件,可以修改 /etc/profile 把上面命令加到最后.





      本文转自027ryan  51CTO博客,原文链接:http://blog.51cto.com/ucode/1826184,如需转载请自行联系原作者





上一篇:Linux ps -ef 排除当前进程(kill当前Tomcat进程)


下一篇:英特尔京东云强强联合 服务互联网+转型升级