检测缺失块

1
hdfs fsck -list-corruptfileblocks
1
hdfs fsck / | egrep -v '^\.+$' | grep -v eplica

查看上面某一个文件的情况

1
hdfs fsck /path/to/corrupt/file -locations -blocks -files

解决方法

如果文件不重要,可以直接删除此文件;或删除后重新复制一份到集群中
如果不能删除,需要从上面命令中找到发生在哪台机器上,然后到此机器上查看日志。

参考