删除文件之后空间不释放在我这遇到的情况主要有两种:
1.hdfs删除文件之后空间不释放
针对此种情况主要是hdfs的回收站功能,为了防止文件误删除,删除的文件会先放到回收站里。
删除的时候也可以直接彻底删除,只需 hdfs dfs -rm -r -skipTrash即可
也可以禁用hdfs的回收站功能,hdfs回收站的功能控制是zaicore-site.xml文件中
<property>
<name>fs.trash.interval</name>
<value>0</value>
</property>
0代表不启用回收站功能,如果是其他正整数的话代表该分钟之后会自动删除
2.linux 删除文件之后不释放
如果是在linux中删除文件不释放,是因为该文件正在被某进程使用,比方说一个很大的log特别占内存,我们把他删除之后发现linux的磁盘空间并没有释放,改挂载的磁盘下空间没有变小,我们需要通过lsof 的命令查到这个文件正在被那个进程使用并干掉就好了;例如hive.log很大,已经删除,空间没有释放我们需要这么做一下
lsof hive.log|grep delete ,查到进程kill掉就好了