Linux大文件已删除,但df查看已使用的空间并未减少
百度问题:Linux里,df发现/分区使用80%多,后删除大部分文件,再使用df查看使用情况,显示内容不变,是为什么?
在网上查了下,好像说是inode的原因,还没真正删除,可是都知说了原因,没有说解决办法,我想知道怎么解决,让df显示目前磁盘实际的使用情况!
解决办法:
lsof|grep deleted
进程号 fd号
mfsmount 13124 root txt REG 104,3 160760 1368696 /var/tmp/portage/sys-cluster/moosefs-1.6.26/image/usr/bin/mfsmount (deleted)
syslog-ng 14142 root 7w REG 104,3 192380776055 7104 /var/log/messages (deleted)
python2.6 21550 root 0u CHR 136,0 0t0 2 /dev/pts/0 (deleted)
php-fpm 30315 root 3u REG 104,3 0 659057 /tmp/.xcache.0.0.1718328763.lock (deleted)
php-fpm 30315 root 4u REG 104,3 0 1236916 /tmp/.xcache.0.1.440168404.lock (deleted)
php-fpm 30315 root 5u REG 104,3 0 1368672 /tmp/.xcache.0.2.300103481.lock (deleted)
php-fpm 30316 nobody 3u REG 104,3 0 659057 /tmp/.xcache.0.0.1718328763.lock (deleted)
php-fpm 30316 nobody 4u REG 104,3 0 1236916 /tmp/.xcache.0.1.440168404.lock (deleted)
php-fpm 30316 nobody 5u REG 104,3 0 1368672 /tmp/.xcache.0.2.300103481.lock (deleted)
php-fpm 30318 nobody 3u REG 104,3 0 659057 /tmp/.xcache.0.0.1718328763.lock (deleted)
php-fpm 30318 nobody 4u REG 104,3 0 1236916 /tmp/.xcache.0.1.440168404.lock (deleted)
php-fpm 30318 nobody 5u REG 104,3 0 1368672 /tmp/.xcache.0.2.300103481.lock (deleted)
php-fpm 30319 nobody 3u REG 104,3 0 659057 /tmp/.xcache.0.0.1718328763.lock (deleted)
这里可以看出syslog-ng 占用了192G的磁盘空间,并且咱们已经把/var/log/messages删除了,但这个进程未结束。
我本来是先用的kill 就达到了这种效果,最后才想起来可能把syslog-ng服务重启一下这才是最好的。
# /etc/init.d/syslog-ng restart
如果重启服务发现df的Usage值未减少,那就把它狠心的杀死吧!
# kill -9 14142