zoukankan      html  css  js  c++  java
  • HDFS上文件权限操作

    使用指定用户和指定权限建文件夹和文件    转载自:https://www.cnblogs.com/zyanrong/p/11995768.html

    创建文件时报错:

    Caused by: org.apache.hadoop.ipc.RemoteException (org.apache.hadoop.security.AccessControlException): Permission denied: user=administrater, access=WRITE, inode="/test":root:supergroup:drwxr-xr-x

    解决办法有多种

    1. 通过代码的方式来设置当前用户名为 root,代码里添加如下代码:

      System.setProperty("HADOOP_USER_NAME", "root");

    2. 通过-D参数来设置当前操作的用户名;

    在执行代码的时候通过 -D 参数来指定 HADOOP_USER_NAME 为 root:java -DHADOOP_USER_NAME root TestMkDir,这样在执行程序的时候,程序获取到的系统中的变量 HADOOP_USER_NAME 的值就是 root,当前用户 就设为root。

    3. 设多级目录,改变对应目录权限

    在 /folder目录下创建 /folder1/folder2只需要把 /folder1的目录权限设置为所有人可读,可写,可执行即可:chmod /folder1 777

    4. 通过hdfs的命令直接改文件权限

    例子:hadoop fs -chown [-R] [OWNER][:[GROUP]] URI [URI ],

    hdfs dfs -chown -R Administrator:Administrator /user/  #更改组、用户权限
    hdfs dfs -chown -R Administrator /user/wocheck  #更改用户
    hdfs dfs -chgrp -R Administrator /use  #更改组权限

  • 相关阅读:
    java基础-Runnable与Callable
    java基础-Reference三
    java基础-Reference二
    java基础-Reference一
    jvm-gc
    jvm-简介
    java基础-enum
    采购申请->MRP
    消耗性物料采购注意事项
    供应商建立的相关配置
  • 原文地址:https://www.cnblogs.com/xiaoxiangzhumm/p/13930565.html
Copyright © 2011-2022 走看看