无法在hdfs中创建目录-权限被拒绝错误

afdcj2ne  于 2023-03-27  发布在  HDFS
关注(0)|答案(2)|浏览(393)

我试图在hdfs中为用户tom创建一个目录,我得到了以下与权限相关的错误。请让我知道如何解决这个问题。

hdfs dfs -mkdir /user/tom /
mkdir: Permission denied: user=tom, access=WRITE, inode="/user":hdfs:supergroup:drwxr-xr-x

好心帮忙。
谢谢,拉姆

1dkrff03

1dkrff031#

HDFS的文件权限方法与Linux系统中使用的POSIX方法非常相似。从您显示的错误消息来看,只有用户“hdfs”可以在/user目录中创建新条目。在您的情况下,有两个例外:
1.运行NameNode的用户具有超级用户权限,并且永远不会通过权限检查。NameNode(以及辅助NameNode和DataNode)通常由“hdfs”用户启动,该用户是“/user”目录的所有者。

  1. HDFS配置文件(hdfs-site.xml)支持“dfs.permissions.superusergroup”的规范,这是一个用户组,其成员也被视为超级用户,并且其请求永远不会通过权限检查。
    有关这方面的更多详细信息,请参见Apache HDFS Permissions Guide的链接。
s4n0splo

s4n0splo2#

要在/user中创建目录,您需要对/user目录具有“WRITE”权限。然而,/user上的权限相当于755,因此只有/user的所有者“hdfs”具有写入权限。错误消息明确指出:

mkdir: Permission denied: user=tom, access=WRITE, inode="/user":hdfs:supergroup:drwxr-xr-x

用户'tom'运行了该命令,但/user由hdfs拥有,group是supergroup,mode位为755。

相关问题