查看linux下进程打开的文件句柄数并清理

---查看系统默认的最大文件句柄数,系统默认是1024
# ulimit -n
1024

----查看当前进程打开了多少句柄数
# lsof -n|awk ‘{print $2}‘|sort|uniq -c|sort -nr|more
131 24204 
57 24244  
57 24231   ........

其中第一列是打开的句柄数,第二列是进程ID。
可以根据ID号来查看进程名。
# ps aef|grep 24204
nginx  24204 24162 99 16:15 ?    00:24:25 /usr/local/nginx/sbin/nginx -s

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

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

1.使用df -i 查看inode已经使用100%
2.使用ls -lt ar/spool/postfix/maildrop/ | wc -l 查看该目录下文件有330W
3.mkdir -pv /tmp/test
4.rsync --delete-before -a -H -v --progress --stats /tmp/test/ ar/spool/postfix/maildrop 使用该命令进行清理

原文地址:http://blog.51cto.com/kinda5/2139178

时间: 2024-08-02 03:44:19

查看linux下进程打开的文件句柄数并清理的相关文章

【转】Linux下查看进程打开的文件句柄数

---查看系统默认的最大文件句柄数,系统默认是1024 # ulimit -n 1024 ----查看当前进程打开了多少句柄数 # lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr|more 131 24204 57 24244 57 24231  ........ 其中第一列是打开的句柄数,第二列是进程ID. 可以根据ID号来查看进程名. # ps aef|grep 24204 nginx 24204 24162 99 16:15 ? 00:24:2

查看linux 下进程运行时间(转)

原文地址:http://blog.csdn.net/tspangle/article/details/11731317 可通过ps 来查看,通过参数 -o 来查看 如: ps -eo pid,tty,user,comm,lstart,etime | grep init 参数说明: pid:进程ID tty:终端 user:用户 comm:进程名 lstart:开始时间 etime:运行时间 运行结果如下: 1 ?        root     init            Tue Sep  

Linux允许打开最大文件句柄数的参数调优-"too many open files"问题

都知道Linux系统的特性,一切皆文件,所有在运行zabbix这样的服务时,其中重要的一个调优就是调整linux系统的最大文件句柄数,解决"too many open files"的问题,增大程序运行允许打开的文件数,提高性能. 一.查看系统运行打开的文件句柄数 # ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file si

查看linux下的内存条数  

1.内存条数: dmidecode|grep -P -A5 "Memory\s+Device"|grep Size|grep -v Range 2.内存最大容量: dmidecode|grep -P 'Maximum\s+Capacity' 3.内存频率: dmidecode|grep -A16 "Memory Device"|grep Speed 查看linux下的内存条数

Linux 下进程与线程的基本概念

2019-10-01 关键字:进程.线程.信号量.互斥锁 什么是程序? 程序就是存放在磁盘上的指令和数据的有序集合,就是源代码编译产物. 它是静态的. 什么是进程? 进程就是操作系统为执行某个程序所分配的资源的总称.进程是程序的一次执行过程,因此它与程序不同,它是动态的.它的生命周期包括创建.调度.执行和消亡. 进程的内容主要包括以下三个部分: 1.正文段: 2.用户数据段: 3.系统数据段. 其中正文段与用户数据段两部分是从程序当中来的.而系统数据段则是操作系统分配的用来管理这个进程用的. 系

查看 Linux 下 CPU、内存的占用率的方法集锦

如何查看 Linux 下内存占用率方法一 : 我们可以使用下面命令的组合来达到此目的.在该方法中,我们使用的是 free 和 awk 命令的组合来获取内存占用率. 要获取不包含百分比符号的内存占用率: #free -t | awk 'NR ==2 {print "CurrentMemory Utilization is: "$3/$2*100}' 或 #free -t | awk 'FNR ==2 {print"Current Memory Utilization is: &

进程打开的文件句柄数量超过系统默认值1024,就会提示“too many files open”信息

在linux系统中,如果进程打开的文件句柄数量超过系统默认值1024,就会提示"too many files open"信息,所以要调整打开文件句柄限制. 有以下两种方法: 修改etc/security/limits.conf  配置文件,重启后永久生效 在文件的末尾加入下面两段: * soft nofile 65535 * hard nofile 65535 在控制台输入命令,立刻生效,但是重启后就会变成默认值1024 ulimit -SHn 65535 建议用第一种方式,永久生效

【网络编程基础】Linux下进程通信方式(共享内存,管道,消息队列,Socket)

在网络课程中,有讲到Socket编程,对于tcp讲解的环节,为了加深理解,自己写了Linux下进程Socket通信,在学习的过程中,又接触到了其它的几种方式.记录一下. 管道通信(匿名,有名) 管道通信,在一个进程之中,只能单一的对其写或者是读,而不可以及执行写操作又执行读操作.这一点,我们可以将其想象成我们的水管,分别连着不同的两端,在有水流的时候,一端只能进行输入,另一端只能进行输出,而不可以同时输入和输出. 管道又分为有名管道和匿名管道,两者的区别在于对于匿名管道,其只能在具有亲缘关系的父

Linux下进程管理工具之(二):htop

实验环境: CentOS release 6.6(Final)  一台 IP地址:172.16.249.230 Htop是一款运行于Linux系统监控与进程管理软件,用于取代Unix下传统的top.与top只提供最消耗资源的进程列表不同,htop提供所有进程的列表,并且使用彩色标识出处理器.swap和内存状态. 用户一般可以在top无法提供详尽系统信息的情况下选择安装并使用htop.比如,在查找应用程序的内存泄漏问题时.与top相比,htop提供更方便.光标控制的界面来杀死进程. htop用C语