我正在尝试使用hadoop用户以外的用户运行配置单元。 当我运行配置单元时,我收到以下错误。我猜Hive正试图访问根目录。如何将inode目录更改为/ user / fratboy?我已经在hdfs中创建了这个,并将所有者更改为fratboy。
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/local/hadoop/hive/lib/log4j-slf4j-
impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in
[jar:file:/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-
1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an
explanation.
SLF4J: Actual binding is of type
[org.apache.logging.slf4j.Log4jLoggerFactory]
Logging initialized using configuration in
jar:file:/usr/local/hadoop/hive/lib/hive-common-2.3.2.jar!/hive-
log4j2.properties Async: true
Exception in thread "main" java.lang.RuntimeException:
org.apache.hadoop.security.AccessControlException: Permission denied:
user=fratboy, access=WRITE, inode="/":hduser:supergroup:drwxr-xr-x
答案 0 :(得分:0)
您可以尝试以下方法:
如果您拥有root权限:#sudo -u hdfs hdfs dfs -chmod 775 /
这会更改/ drwxrwxr-x
上的权限,这会为您的用户fratboy提供权限。
使/user
/
希望这个帮助