在一个文件夹中具有读/写/执行权限但无法进入其中的组

时间:2015-06-22 20:26:59

标签: linux permissions

我目前正在尝试将用户添加到我在linux机器上的git repo中。我做了一个组调用webdev,其中我使用useradd.I添加了user1和user2,然后继续将该组添加到该文件夹​​。然后我使用chmod 070更改了文件夹的权限。我重启了机器。

问题

现在我尝试cd进入我刚刚更改权限的文件夹,它说我没有足够的权限,但我还在webdev组。

当我列出文件夹时,这就是我得到的

 d---rwx--- 3 user1 webdev 4096 jun 22 14:18 : Git Repo

在etc / groups中,它清楚地列出了组中的user1和user2。

2 个答案:

答案 0 :(得分:2)

Unix权限实际上是这样工作的:

if (you are root) {
    you have 'rwx' permissions for any folder and 'rw' and possibly 'x' for any file
} else if (you are file's owner) {
    only 'owner' permissions apply to you
} else if (list of groups you belong to includes file's group) {
    only 'group' permissions apply to you
} else {
    only 'other' permissions apply to you
}

因此,如果您是user1且文件夹的所有者是user1且文件夹具有'---rwx---'权限,则所有者权限('---')适用于您和您无法访问。

答案 1 :(得分:1)

您的问题与git无关。您应该使用chmod 070,而不是在您的目录上运行chmod 770。对rwx没有user1权限可能会覆盖组权限,从而锁定user1。可以user2进入吗?

奇怪的是,当我在Ubuntu 12.04,OS X Mountain Lion和OS X Yosemite上进行测试时,我被锁定了,但不是在OS X Lion上。