即使有写权限,组成员也无法写入

即使有写权限,组成员也无法写入

登录的用户是对文件夹具有写入权限的组的成员。但是当该用户尝试写入内容时,“权限被拒绝”。

下面的日志总结了这个问题:

subv:/www/tracer/ whoami
frank
subv:/www/tracer/
subv:/www/tracer/ ls -ltr 
total 4
drwxrwxr-x 2 root tracer 4096 Jan 20 12:25 convert.tracer.com
subv:/www/tracer/ groups frank
frank : frank tracer
subv:/www/tracer/ > convert.tracer.com/test
-bash: convert.tracer.com/test: Permission denied
subv:/www/tracer/

“ls -bail /www/tracer/convert.tracer.com/”的输出:

subv:~/ ls -bail /www/tracer/convert.tracer.com/
total 8
38010883 drwxrwxr-x 2 root tracer 4096 Jan 20 12:25 .
38010882 drwxr-xr-x 3 root root    4096 Jan 20 12:25 ..
subv:~/ 

答案1

登录时会重新读取组成员资格。groups似乎报告您所在的组/etc/group,但并不反映当前会话中组的成员身份。

使用该命令id -Gn显示您当前是其活跃成员的组。解决方案:重新登录以应用组更改。

答案2

您拥有该文件的目录的权限如何?

您可以使用 vim 编辑该文件并保存吗?

尝试做类似的事情

chmod g+w .

更新

subv:~/ ls -bail /www/tracer/convert.tracer.com/
total 8
38010883 drwxrwxr-x 2 root tracer 4096 Jan 20 12:25 .
38010882 drwxr-xr-x 3 root root    4096 Jan 20 12:25 ..

创建跟踪器目录时可能出现问题,我在输出的第二行中看到 root 和 4096 之间有奇怪的空格。

我会以 root 身份尝试这个:

cd /www/tracer/
chown root:root .
chown root:tracer convert.tracer.com

如果仍然可以,我会检查 /etc/group 中的组名称,执行

cat -v /etc/group

检查根和跟踪组中是否没有不可打印的字符

最后,如果问题仍然存在,则可能是 SELinux 或文件系统的问题。

相关内容