![尽管目录具有正确的权限并且用户属于正确的组,但用户无法进入其组的目录](https://linux22.com/image/772588/%E5%B0%BD%E7%AE%A1%E7%9B%AE%E5%BD%95%E5%85%B7%E6%9C%89%E6%AD%A3%E7%A1%AE%E7%9A%84%E6%9D%83%E9%99%90%E5%B9%B6%E4%B8%94%E7%94%A8%E6%88%B7%E5%B1%9E%E4%BA%8E%E6%AD%A3%E7%A1%AE%E7%9A%84%E7%BB%84%EF%BC%8C%E4%BD%86%E7%94%A8%E6%88%B7%E6%97%A0%E6%B3%95%E8%BF%9B%E5%85%A5%E5%85%B6%E7%BB%84%E7%9A%84%E7%9B%AE%E5%BD%95.png)
我有一个名为的目录/workspace
,如下所示:
[root@machine workspace]# ls -al
total 7
drwxr-s---. 7 root workspace 4651468242 Nov 16 14:41 .
dr-xr-xr-x. 22 root root 4096 Nov 15 11:36 ..
(我省略了它的子目录。您可以看到它/workspace
属于该组workspace
)
然后有一个用户yang
,其id
状态如下:
[root@machine workspace]# id yang
uid=563(yang) gid=1701(yang) groups=1701(yang),1044(workspace)
这应该允许他进入,/workspace
但实际上他不能:
[root@machine workspace]# su - yang
Last login: Mon Nov 22 10:05:41 CST 2021 on pts/46
[yang@machine ~]$ cd /workspace/
-bash: cd: /workspace/: Permission denied
但是,在群组中的所有用户中workspace
,他是唯一一个遇到此问题的用户。 其他用户可以/workspace
正常访问,例如:
[root@machine workspace]# id zhao
uid=651(zhao) gid=651(zhao) groups=651(zhao),1044(workspace)
[root@machine workspace]# su - zhao
Last login: Mon Nov 22 10:13:27 CST 2021 on pts/103
[zhao@machine ~]$ cd /workspace/
[zhao@machine workspace]$
更多详细信息请见:
[yang@machine ~]$ id
uid=563(yang) gid=1701(yang) groups=1701(yang),1044(workspace) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[zhao@machine ~]$ id
uid=651(zhao) gid=651(zhao) groups=651(zhao),1044(workspace) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
CentOS 6.9 和 7.9 都遇到了这个令人沮丧的问题。有人能帮我解决吗?谢谢!
答案1
好的,在一位同事建议我补充组可能存在上限之后,我仔细检查了一下,发现它/workspace
位于nfs
带有命令的驱动器上df -hT
,并且根据RFC5531,当使用AUTH_SYS身份验证时,默认的最大组ID数量为16。我发现了一个NetApp 提供的指南教您如何更改默认限制。虽然在实践中,不同供应商的方法应该有所不同,但它仍然可以为您提供一个总体思路。
另一个教训是提问时不要遗漏任何东西。事实证明,yang
我属于超过 16 个群组,而大多数其他用户都没有超过这个数字。我遗漏了其他群组,认为它们太长、太突兀,但最终,它们才是问题所在。