HDFS權限

1.1 超級用戶

啓動namenode服務的用戶就是超級用戶, 該用戶的組是supergroupnode

1.2 文件權限管理

 

1.2.1 建立時的owner和group

文件或者目錄被建立之時,服從BSD規則,owner是客戶端進程的用戶,group是父目錄的grouplinux

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節點上建立該用戶服務器

  • 容許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節點都要這麼幹ide

      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。該功能默認關閉, 須要以下設置打開spa

dfs.namenode.acls.enabled true

 

具體配置實在hdfs-site.xml中.net

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


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

 

在core-site.xml設置用戶組默認權限.rest

<property>
<name>fs.permissions.umask-mode</name>
<value>002</value>
</property>
相關文章
相關標籤/搜索