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等工具实现细粒度权限管控。
参考来源: