Exception in thread "main" org.apache.hadoop.security.AccessControlException: Permission denied: user=Admin, access=WRITE, inode="/":fanger:supergroup:drwxr-xr-x
at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:308)
at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:214)
at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:190)
at org.apache.hadoop.hd
权限问题
hadoop识别不了windows下的用户
解决:
方法1、运行代码时,指定用户名
方法2、代码中,代码最前面添加
System.setProperty("HADOOP_USER_NAME", "hadoop用户名");
或者
FileSystem fs=FileSystem.get(new URI("hdfs://hadoop01:9000"), conf, "hadoop用户名");
这种解决完之后会存在副本个数和配置文件中的不一致,生成的副本个数是默认个数
想要修改,可以将修改过的配置文件放入到src下即可
文件名为hdfs-site.xml或者hdfs-default.xml都可以
或者修改代码:
conf.set("dfs.replication", "4");