Samba ACL 上的文件掩码计算 - 缺少 r

Samba ACL 上的文件掩码计算 - 缺少 r

我想详细询问一下 Samba 如何处理服务器上 ACL 上的权限。我确实非常努力和深入地研究过这个问题,但还是没有成功。我已经为此设置了 ACL 支持,但不管我怎么想,还是有一点缺失。让我在代码下面问一下。

我有一个目录 spolecne (这是 samba 共享):

# file: spolecne/
# owner: root
# group: root
user::rwx
group::---
group:amikon:rwx
mask::rwx
other::---
default:user::rwx
default:group::---
default:group:amikon:rwx
default:mask::rwx
default:other::---

samba共享设置为:

[spolecne]
path = /smb/spolecne
create mask = 0777
directory mask = 0777
public = no
writable = yes
valid users = @amikon

从 Windows 机器创建的条目如下所示(vanek 是 amikon 的成员):

# file: dir
# owner: vanek
# group: amikon
user::rwx
group::rwx
group:amikon:rwx
mask::rwx
other::rwx
default:user::rwx
default:group::---
default:group:amikon:rwx
default:mask::rwx
default:other::---

# file: file.txt
# owner: vanek
# group: amikon
user::rwx
group::-w-      //read is missing
group:amikon:rwx
mask::rwx
other::-w-      //read is missing

目录看起来符合预期。虽然默认目录掩码是 777,但我得到的是 777。我预料到了这种情况。

问题出在文件上。创建掩码为 777,我期望从组和其他中删除 x 位。但结果是 r 和 x 被删除了。

所以问题是你们能否向我解释一下为什么读取位被删除了???

我真的很感激任何帮助,因为我一生中最美好的时光都花在这上面。

相关内容