首页 > 代码库 > linux运维-应用程序没有释放文件句柄引起的磁盘满问题

linux运维-应用程序没有释放文件句柄引起的磁盘满问题

排查过程。

1.       收到磁盘告警。 

     Check磁盘

 # df -h

Filesystem            Size  Used Avail Use% Mounted on


/dev/sda1             9.9G  2.2G  7.3G  23% /


udev                   16G  168K   16G   1% /dev


/dev/sda3              20G  768M   18G   5% /usr/local


/dev/sda4             103G   92G  5.9G  94% /data


2.查看 data的哪个目录下占用了这大空间 du -h  --max-dep=1  /data , 发现使用情况才使用了35G

3.     查看哪个程序打开文件大,lsof|awk ‘{if ($5~/REG/ && $7 > 1000000000 ) print $0}‘  查看 TYPE 为文件,并且SIZE 大于1G的文件。发现60G没有被释放。


ServerApp  7383 root    4u   REG    8,4 60963948989 11142014 /data/server/box/backlog/backlog.dump (deleted)


4.       重启Serverapp解决,


 


Filesystem            Size  Used Avail Use% Mounted on


/dev/sda1             9.9G  2.2G  7.3G  23% /


udev                   16G  168K   16G   1% /dev


/dev/sda3              20G  769M   18G   5% /usr/local


/dev/sda4             103G   35G   63G  36% /data


5.通知开发修改程序


linux运维-应用程序没有释放文件句柄引起的磁盘满问题