HDFS在Linux中的权限管理结合了Linux权限模型与HDFS特有机制,主要通过命令和配置文件实现,具体如下:
基础权限管理
hdfs dfs -ls /path
查看文件/目录权限,输出中-rwxr-xr-x
分别代表所有者、组、其他用户的读写执行权限。hdfs dfs -chmod
命令设置权限,支持数字模式(如755
)或符号模式(如u+rwx
)。hdfs dfs -chown newowner:newgroup /path
更改所属用户及组。访问控制列表(ACL)
hdfs-site.xml
中设置dfs.namenode.acls.enabled=true
。hdfs dfs -setfacl -m user:username:permissions /path
为用户/组添加权限,支持递归操作(-R
参数)。hdfs dfs -getfacl /path
查看详细权限规则。超级用户与安全模式
dfs.permissions.superusergroup
配置超级用户组,成员可绕过权限检查。core-site.xml
和hdfs-site.xml
中启用Kerberos认证,增强安全性。配置参数管理
dfs.permissions.enabled
控制是否启用权限检查(默认true
)。fs.permissions.umask-mode
设置新文件/目录的默认权限(如022
对应文件权限644
)。注意:生产环境中需谨慎使用-R
递归操作,避免权限过度开放。建议结合Ranger等工具实现细粒度权限管控。
参考来源: