1.1 超级用户
启动namenode服务的用户就是超级用户, 该用户的组是supergroup
1.2 文件权限管理
1.2.2 访问权限说明
| object | r | w | x | stick bit(restricted deletion flag) |
|---|---|---|---|---|
| file | 读文件 | 写或者追加写文件 | 无效 | |
| directory | 列出目录的内容 | 创建或者删除子文件或子目录 | 访问子文件或者子目录 | 阻止移动或者删除该目录内的文件或目录(超级用户,owner和group不会被stick bit阻止) |
1.2.3 应用示例
- 创建/input目录,用于接收外部写入的数据
-
- input目录的group也是input,owner是lisa(超级用户),
- 创建/input/dean目录,用于接收dean用户写入的数据, owner是dean用户,group用户允许写入数据
-
$ hdfs dfs -mkdir -p /input/dean $ hdfs dfs -ls / Found 3 items drwxr-xr-x - lisa supergroup 0 2015-11-08 17:26 /input drwxr-xr-x - lisa supergroup 0 2015-09-28 15:21 /test drwxr-xr-x - lisa supergroup 0 2015-11-08 17:09 /tmp $ hdfs dfs -ls /input Found 1 items drwxr-xr-x - lisa supergroup 0 2015-11-08 17:26 /input/dean
- 修改input目录的owner为lisa,group从supergroup改为input
$ hdfs dfs -chown lisa:input /input $ hdfs dfs -ls / Found 3 items drwxr-xr-x - lisa input 0 2015-11-08 17:26 /input drwxr-xr-x - lisa supergroup 0 2015-09-28 15:21 /test drwxr-xr-x - lisa supergroup 0 2015-11-08 17:09 /tmp
- 修改/input/dean目录的ower和group都为dean
$ hdfs dfs -ls /input Found 1 item drwxrwxr-x - dean dean 0 2015-11-21 16:24 /input/dean
注意,客户机上创建linux 用户dean,无需在namenode节点上创建该用户
$ hdfs dfs -chmod -R g+w /input/qoros
- 创建guoqiang帐号和组input
useradd guoqiang
groupadd input
- 改guoqiang用户组为input
usermod -g input guoqiang
在namenode所在的服务器上添加相同的用户和组,这点很奇怪,如果不这么干写操作会被拒绝,这会造成麻烦,因为两个namenode节点都要这么干
useradd guoqiang
usermod -g input guoqiang