普通用户访问hadoop文件管理系统
如果分布式文件系统的安装用户是root的话,那么,对于一个普通用户来说,是不能对hdfs的文件目录进行读写操作。
linux操作系统:cent OS 6
普通用户使用命令
hadoop fs -mkdir /normal
这样的命令就会报错:
permisson denined user='yourusername',access= xxxx,inode = 'xxxxx'.. //这类的报错信息
那么如何去做可以实现让普通用户操作hadoop分布式文件管理系统?
最简单的方法:
hadoop fs -chmod -R 777 /
使用上述的命令,那么hadoop文件管理系统上面的文件夹的权限是drwx rwx rwx
,文件的权限是rwx rwx rwx
那么普通用户就可以成功的访问hdfs了,可以执行写入hadoop 分布式文件系统。
但是这样的话,所有的普通用户都能访问hdfs,然后我就在想,能不能精确的划分用户的权限呢?比如这个目录我只允许一部分用户具有访问权限,其它的同类型用户没有访问权限。
那么我目前有一个这样的做法:
root权限下:
在hadoop 分布式文件系统上创建一个目录/jack
hadoop fs -mkdir /jack
这个目录在hdfs上的所属用户是root
这个目录在hdfs上所属的用户组是superGroup
创建一个普通用户jack
useradd jack
切换到普通用户jack
su jack
jack用户尝试创建文件夹
hadoop f