码迷,mamicode.com
首页 > 其他好文 > 详细

HDFS权限

时间:2017-08-08 10:59:26      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:ant   cin   out   str   服务   tmp   contain   执行   play   

1.1 超级用户

启动namenode服务的用户就是超级用户, 该用户的组是supergroup

1.2 文件权限管理

 

1.2.1 创建时的owner和group

文件或者目录被创建之时,服从BSD规则,owner是客户端进程的用户,group是父目录的group

1.2.2 访问权限说明

objectrwxstick 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节点上创建该用户

  • 允许input group用户写入/input/qoros目录
    1. 先要设置目录权限,让input组用户都能读,写,执行该目录
      $ hdfs dfs -chmod -R g+w /input/qoros

       

    2. 然后在客户机上
      • 创建guoqiang帐号和组input
      useradd guoqiang
      groupadd input

       

      • 改guoqiang用户组为input
      usermod -g input guoqiang

       

      在namenode所在的服务器上添加相同的用户和组,这点很奇怪,如果不这么干写操作会被拒绝,这会造成麻烦,因为两个namenode节点都要这么干

      useradd guoqiang
      usermod -g input guoqiang

       

  • 取消其他用户的所有权限
    $ hdfs dfs -chmod -R o-r /input/dean
    $ hdfs dfs -ls /input
    Found 1 items
    drwxrwx--x   - lisa supergroup          0 2015-11-08 17:26 /input/dean
    $ hdfs dfs -chmod -R o-x /input/dean
    $ hdfs dfs -ls /input
    Found 1 items
    drwxrwx---   - lisa supergroup          0 2015-11-08 17:26 /input/dean

1.3 POSIX ACLs(目前尚未使用)

为特定的用户和组提供细致粒度的权限管理, 而不只是owner,group。该功能默认关闭, 需要如下设置打开

dfs.namenode.acls.enabled true

 

具体配置实在hdfs-site.xml中

<property> 
<name>dfs.permissions.enabled</name> 
<value>true</value> 
</property>


<property> 
<name>dfs.namenode.acls.enabled</name> 
<value>true</value> 
</property>

 

在core-site.xml设置用户组默认权限.

<property>
<name>fs.permissions.umask-mode</name>
<value>002</value>
</property>

 

HDFS权限

标签:ant   cin   out   str   服务   tmp   contain   执行   play   

原文地址:http://www.cnblogs.com/royfans/p/7305044.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!