df -Th 查看磁盘使用率确实达到86
/dev/md0 ext4 3.6T 1.9G 3.4T 1% /data
/dev/md1 ext4 3.6T 3.0T 493G 86% /data1
/dev/md2 ext4 3.6T 3.0T 492G 86% /data2
/dev/md3 ext4 3.6T 3.0T 494G 86% /data3
/dev/md4 ext4 3.6T 3.0T 490G 86% /data4
删除了十几天的表后,磁盘使用率没有变化!
[gpadmin@sdw2 data1]$ du -sh /data1/*
1.5T /data1/daily
50G /data1/gpdata
使用du -sh发现,目录下的文件,实际使用率只有1/3
问题分析:这个问题和Hadoop141服务器问题一样,有很多大文件,在被删除之后还被系统的某个进程占用,空间没有释放,找进程Kill之后即可。
lsof这个命令重点关注第一个字段COMMAND:进程的名称和第二个字段PID:进程标识符
第一步:找到被进程占用的删除的大文件,导出到文本。
lsof |grep delete > deleted.txt
第二步:过滤出pid,排序,去重。
cat detele.txt |awk '{print $2}'|sort |uniq
第三步:使用for循环kill掉进程。
for i in cat detele.txt |awk '{print $2}'|sort |uniq
; do kill $i; done
第四步:df查看磁盘是否被释放。反正我的GP磁盘目录是被释放了。
转载于:https://blog.51cto.com/12873386/2378655