hdfs目录 - 如何检查写访问权限

时间:2015-11-04 09:24:50

标签: apache-spark hdfs

我想检查hdfs目录是否具有写访问权限。我可以看到文件的方法是否存在,但是我没有看到在hdfs文件系统类中是否具有写访问权限的方法。

FileSystem fs = FileSystem.get(new Configuration());
if (fs.exists(new Path(cleanFilePath)) {
      // do something.
}

而且,当我尝试使用saveAsTextFile()编写一些RDD时,如果用户没有写访问权限,则不会抛出任何错误。我总能看到成功的状态。

有人可能遇到类似问题,请帮助我。

1 个答案:

答案 0 :(得分:0)

由于Hadoop FileSystem类似乎没有此功能,因此您可以使用Java File类来完成此检查。

File f = new File("path");
if(f.canWrite()) {
    // write access
}

否则,如果您最终需要更改路径权限,则可以使用:

FileSystem fs = FileSystem.get(new Configuration());
fs.setPermission(new Path(cleanFilePath), FsPermission permission)