Linux下查看句柄

查看各个分区的句柄数

df -ih

查看句柄最大数

ulimit -n

查看23711进程连接句柄数

lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr|more |grep 23711

查看所有进程句柄数

lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr|more第一列是句柄数,第二列是PID

查看连接状态

netstat -an

lsof -i

查看某个线程号的详细信息。
ps -aef|grep 24204

没有释放句柄占用的文件存放路径
用root权限登录 cd /proc
ls 会显示当前所有进程号命名的目录
找到对应进程进入
cd fd
ls
闪烁的为被标记为deleted的文件。

产生没有释放句柄的原因: 第一线程打开文件。另一个线程将该文件删除。就会出现给问题。将整儿进程kill掉才能释放全部句柄。

我的根目录的inode节点满了,没办法只有自己来看看


[[email protected] ~]# df -iFilesystem      Inodes   IUsed  IFree IUse% Mounted on/dev/sda3      1240320 1240320      0  100% /tmpfs           126536       2 126534    1% /dev/shm/dev/sda1        25688      38  25650    1% /boot.host:/              0       0      0     - /mnt/hgfs

按照上面的


lsof -n|awk '{print $2}'|sort|uniq -c|sort -n

102 1716

113 1784

170 1772

170 1774

170 1777

170 1780

170 1781

183 1718

我把靠后的进程给杀了,没用,df -i 还是一样的,继续想别的办法

我就只有一个办法了,那就是看看那个文件夹下的文件最多,写了个for循环来查看


[[email protected] /]# for i in `ls`;do find $i/ -type f|wc -l &&echo $i ;done0app91bin22boot60dev1100etc8104home3242lib277lib640lost+found0media36237mnt525optfind: “proc/2325/task/2325/fd/5”: 没有那个文件或目录find: “proc/2325/task/2325/fdinfo/5”: 没有那个文件或目录find: “proc/2325/fd/5”: 没有那个文件或目录find: “proc/2325/fdinfo/5”: 没有那个文件或目录27411proc38251root198sbin0selinux9srv7008sys4tmp79319usr

一个media占了3W3一个tmp占了8W靠,但是多余120W的还是微不足道,看看这两个文件夹下都有什么


[[email protected] /]# du -sh tmp/44K	tmp/[[email protected] /]# du -sh  media/4.0K	media/

什么都没有,郁闷了,先给删了,再看看


[[email protected] /]# df -iFilesystem      Inodes   IUsed  IFree IUse% Mounted on/dev/sda3      1240320 1240316      4  100% /tmpfs           126536       2 126534    1% /dev/shm/dev/sda1        25688      38  25650    1% /boot.host:/              0       0      0     - /mnt/hgfs

删了但是只是增加了那么一点点,估计不是他两的问题,刚才的循环还没结束,继续想办法

大目录太慢,就进到下一层目录试试看


[[email protected] var]# for i in `ls /var`;do find $i/ -type f|wc -l &&echo $i ;done

1accountfind: “cache/salt/master/jobs/7c/3238b58e45f242132dade0d989314a/.minions.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/3238b58e45f242132dade0d989314a/.load.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/3238b58e45f242132dade0d989314a/jid”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/f98bd5f094921b93d5435ea81b0414/.minions.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/f98bd5f094921b93d5435ea81b0414/.load.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/f98bd5f094921b93d5435ea81b0414/jid”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/afa7d7cf12cedd5e2f121536749ded/.minions.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/afa7d7cf12cedd5e2f121536749ded/.load.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/afa7d7cf12cedd5e2f121536749ded/jid”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/2f0ced419e95aff3fd0940303ed101/master/return.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/2f0ced419e95aff3fd0940303ed101/master/out.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/2f0ced419e95aff3fd0940303ed101/.minions.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/2f0ced419e95aff3fd0940303ed101/.load.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/2f0ced419e95aff3fd0940303ed101/jid”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/c8ad7fa07b55ceaf9dd4f1fa068ee4/.minions.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/c8ad7fa07b55ceaf9dd4f1fa068ee4/.load.p”: 没有那个文件或目录find: “cache/salt/master/jobs/7c/c8ad7fa07b55ceaf9dd4f1fa068ee4/jid”: 没有那个文件或目录

丫的终于找到了你了,果断删除就行了

原文地址:http://blog.51cto.com/853056088/2123473

时间: 2024-11-13 08:51:39

Linux下查看句柄的相关文章

Linux下查看操作系统信息、内存情况及cpu信息:cpu个数、核心数、线程数

文章转载:http://blog.snsgou.com/post-793.html 1.查看物理CPU的个数 [[email protected] ~]# cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l1 2.查看逻辑CPU的个数 [[email protected] ~]# cat /proc/cpuinfo |grep "processor"|wc -l4 3.查看CPU是几核(即,核心数) [[em

Linux下查看系统配置

CPU 1. lscpu:显示cpu架构信息 [[email protected] ~]$ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 #总处理器核心数量 On-line CPU(s) list: 0-3 Thread(s) per core: 1 #每个核心支持的线程数量.1表示只支持一个线程,即不支持超线程 Core(s) per socket: 1

Linux下查看CPU信息

linux下查看CPU的信息主要通过查看/proc/cpuinfo这个文件. 一.针对/proc/cpuinfo文件,我们需要查看processor,physical id,siblings,core id,cpu cores这几个字段. 1.拥有相同physical id的所有逻辑处理器共享同一个物理插座.每个physical id 代表一个唯一的物理封装,即一颗CPU. 2.Siblings表示位于一个物理封装的CPU上逻辑CPU的个数. 3.每个core id 均代表一个唯一的处理器内核,

Linux下查看mysql、apache是否安装,安装,卸载等操作

Linux下查看mysql.apache是否安装,并卸载. 指令 ps -ef|grep mysql 得出结果 root     17659     1  0  2011 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --log-error=/var/log/mysqld.log --pid-file=/var/run/mysql

linux下查看和添加PATH环境变量

linux下查看和添加PATH环境变量 $PATH:决定了shell将到哪些目录中寻找命令或程序,PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻编译链接. 编辑你的 PATH 声明,其格式为: PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:------:<PATH N> 你可以自己加上指定的路径,中间用冒号隔开.环境变量更改后,在用户下次登陆时生效,如果想立刻生效,则可执行下面的语句:$ sourc

Linux 下查看某一个程序所使用的内存方法介绍

Linux 下查看某一个程序所使用的内存方法介绍 在 Linux 上进行开发和运营维护的时候,免不了要查看某一个程序所占用内存的情况.常用方法总结如下(注意第四种方法): 第一种:ps -aux | grep process_name 举例如下:现打算监控/usr/bin/sshd所占的内存,首先需找到pid,然后使用top进行有目标的监控,RES即为内存值,见下两图: top -p 1231,截图如下:    第二种:top -p pid 查看程序的情况 如上图所示! 第三种:cat /pro

linux下查看系统的发行版本及位数

linux下查看系统的发行版本:lsb_release -a 查看32.64位:1. getconf LONG_BIT 2. file /bin/ls 3. uname -a

linux下查看所有磁盘状态

linux下查看所有磁盘状态命令为:lsblk [[email protected] lamp]# lsblk NAME                        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT sda                           8:0    0   50G  0 disk  ├─sda1                        8:1    0  500M  0 part /boot └─sda2           

linux下查看用户及用户组的方法

whois 功能说明:查找并显示用户信息. 语 法:whois [帐号名称] 补充说明:whois指令会去查找并显示指定帐号的用户相关信息,因为它是到Network Solutions 的WHOIS数据库去查找,所以该帐号名称必须在上面注册方能寻获,且名称没有大小写的差别.    whois功能说明:查找并显示用户信息.语 法:whois [帐号名称]补充说明:whois指令会去查找并显示指定帐号的用户相关信息,因为它是到Network Solutions 的WHOIS数据库去查找,所以该帐号名