1.集羣裝好後在hive創建表時遇到FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Got exception: org.apache.hadoop.security.AccessControlException Permission denied: user=root, access=WRITE, inode="/":hdfs:supergroup:drwxr-xr-x;
看到此問題第一想法是切換hdfs用戶進行一下驗證,於是用此命令:sudo su hdfs切換hdfs用戶
結果告訴我:This account is currently not available.
告訴我這個用戶是不可以用的。無奈,通過 cat /etc/passwd:
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/false
flume:x:995:992:Flume:/var/lib/flume-ng:/sbin/nologin
hdfs:x:994:991:Hadoop HDFS:/var/lib/hadoop-hdfs:/sbin/nologin
solr:x:993:990:Solr:/var/lib/solr:/sbin/nologin
sentry:x:992:989:Sentry:/var/lib/sentry:/sbin/nologin
hue:x:991:988:Hue:/usr/lib/hue:/sbin/nologin
發現hdfs的shell是不可用的,將hdfs:x:994:991:Hadoop HDFS:/var/lib/hadoop-hdfs:/sbin/nologin改爲hdfs:x:994:991:Hadoop HDFS:/var/lib/hadoop-hdfs:/bin/bash問題得到解決
可以切換hdfs用戶了
切換hdfs 用戶後,通過 hadoop fs -chmod 777 /user 給所有用戶訪問hdfs所有權限,最終建表限制得到解決