我在
有一个目录/home/ec2-user/vertica1
我试图让用户dbadmin
在该文件夹中获得所有权限。
我已经完成了该文件夹上的dbadmin和chmod 777,但dbadmin仍然收到权限被拒绝错误。
如果我把sudo放在命令前面(我把dbadmi放在sudoers中),那么它就可以了。为什么我不能在没有sudo的情况下让它工作?
答案 0 :(得分:4)
dbadmin可以遍历/home/ec2-user
吗?尝试chmod a+x /home/ec2-user
可能有更多理由被拒绝,例如特定的acl或LSM,但这是最可能的原因。
UNIX权限rwx¹对目录起作用,如下所示:
遍历权限意味着您可以访问子文件夹(假设您知道其名称 - 如果您还具有读取权限,则可以获取该名称)。
在这种情况下,dbadmin可以读取和遍历/以及/ home,但/ home / ec2-user可能具有类似drwx------ 2 ec2-user
的模式以保护其内容。因此,即使您的主文件夹内的任何人都有可读的重要文件,其他用户也无法进入,因为他们无法通过/home/ec2-user
(这正是您想要的做,在这种情况下)。
¹请注意,我正在跳过更具异国情调的人。
答案 1 :(得分:1)
这个目录的ls -la和父目录的结果是什么?也许该目录没有您的用户的读取权限。
sudo chmod ug + r vertica1
ec2-user目录也应该由用户dbadmin写入。