Permission denied: user=dr.who, access=READ_EXECUTE, inode="/tmp":student:supergroup:drwx------权限问题

在查看browse directory时,点击tmp,无法进入,报错:“Permission denied: user=dr.who, access=READ_EXECUTE, inode="/tmp":student:supergroup:drwx------”。

有tmp和user,但tmp的权限是drwx------,而user的权限是drwxr-xr-x

文件权限第一个d是目录的意思,后面的9位,每3位分别为用户权限、组权限和其他权限。每位又有r、w、x,即为读权限、写权限、执行权限。

有权限的为1,无权限的为0。

drwx------就是700,代表用户具有读、写、执行的权限,组没有权限、其他没有权限;drwxr-xr-x就是755,代表用户具有读写执行的权限,组具有读、执行的权限,其他具有读、执行的权限。

对于文件目录而言,必须要有执行权限才能进入,所以需要对权限进行设置。

chgrp:改变所属群组,语法:chgrp 群组名 文件或目录(需要修改的群组名必须在etc/group中存在)

chown:改变作者,语法:chown [-R] 用户名 文件或目录  或者chown [-R] 用户名:群组 文件或目录  ([-R]可以对目录下的所有子目录或文件进行作者修改,必须在/etc/passwd中存在,可以直接修改群组名)

chmod:改变权限属性,语法:chmod [-R] xxx 文件或目录   (xxx是指700、755之类的)

所以,只需要在hadoop目录下,运行  bin/hdfs dfs -chmod -R 755 /tmp ,将tmp的权限修改,则可以了。

猜你喜欢

转载自www.cnblogs.com/xl-201710/p/9757961.html