我目前正在尝试将用户添加到我在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。
答案 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上。