解决org.apache.hadoop.security.AccessControlException: Permission denied: user=Administrator

IT 文章5年前 (2021)发布 小编
0 0 0

我们在使用Java API操作HDFS时如果出现如下错误提示:
[v_error]org.apache.hadoop.security.AccessControlException: Permission denied: user=Administrator, access=WRITE, inode=”/”:hadoop:supergroup:drwxr-xr-x
at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:399)
[/v_error]
表明我们没有使用正确的用户操作HDFS,即没有操作权限,这里我们可以使用两种方案解决:
[v_act]方案1:[/v_act]在程序的main方法里面,最上面一行加入

System.setProperty("HADOOP_USER_NAME","你的用户名");

[v_act]方案2:[/v_act]在文件系统FileSystem创建对象时,表明“你的用户名”

FileSystem fileSystem = FileSystem.get(uri ,conf,"你的用户名");

然后再去尝试就发现OK了

ad

程序员导航

优网导航旗下整合全网优质开发资源,一站式IT编程学习与工具大全网站

© 版权声明

相关文章

暂无评论

暂无评论...