我想检查hdfs目录是否具有写访问权限。我可以看到文件的方法是否存在,但是我没有看到在hdfs文件系统类中是否具有写访问权限的方法。
FileSystem fs = FileSystem.get(new Configuration());
if (fs.exists(new Path(cleanFilePath)) {
// do something.
}
而且,当我尝试使用saveAsTextFile()编写一些RDD时,如果用户没有写访问权限,则不会抛出任何错误。我总能看到成功的状态。
有人可能遇到类似问题,请帮助我。
答案 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)