我想为我的用户创建一个特殊的组目录结构。
/home/groupA
-groupA
每个用户都groupA
可以创建/编辑/删除文件的主文件夹
/home/groupA/Public
- 每个用户都可以读取文件的公共文件夹
/home/groupA/Public/Dropbox
- 每个用户都可以写入文件但只有用户groupA
可以访问该目录并创建/编辑/删除文件的文件夹
我现在有:
4 drwxrwx--t 10 nobody groupA 4096 Feb 18 15:44 /home/groupA
4 drwxrwxr-x 7 nobody groupA 4096 Feb 18 15:40 /home/groupA/Public/
4 drwxrwx-w- 10 nobody groupA 4096 Feb 18 15:55 /home/groupA/Public/Dropbox
我的smb.conf
包含以下条目
[groupA]
path = /home/groupA
comment = Folder for users of groupA
browseable = yes
read only = no
create mask = 0770
directory mask = 0770
force group = groupA
[groupA Public]
path = /home/groupA/Public
comment = Admins Public
Browseable = yes
write list = @groupA
create mask = 0775
directory mask = 0775
[groupA DropBox]
path = /home/groupA/Public/Dropbox
comment = groupA Dropbox
read only = no
valid users = @groupA
browseable = yes
inherit owner = yes
directory mode = 3770
force directory mode = 3770
工作部分是用户groupA
可以访问和充分使用/home/groupA
。所有用户都可以/home/groupA/Public/
从那里访问和读取文件。
我的问题是所有用户,甚至那些不在的用户,都groupA
可以访问/home/groupA/Public/Dropbox
并查看所有文件。我只是希望他们能够将文件放在那里但看不到文件夹的内容并禁止他们删除其中的任何文件。
有没有人知道可能是什么问题以及我该如何解决?
不幸的是,不可能创建一个不能列出内容并可以写入文件的文件夹,当 Windows 看到这样的内容时会发疯。
大多数用户无法通过 FTP 处理这样的事情,这是非常常见的配置。
您需要使用某种允许发布文件的网站。
我们在 Debian Linux 上为我们的学区做这种事情。我们在以下位置设置共享
smb.conf
:在文件系统中设置文件夹的权限,而不是在 Samba 中。试试看,然后报告。
您将希望投递箱具有写入权限,但没有读取权限。所以 773 会让其他人将文件写入文件夹,但只有所有者和组才能读取它们。
编辑:误读了保管箱的前提。
所以,事实证明我误读了整个问题,不知道问题是什么。但是我确实找到了这篇文章,如果您还没有阅读它,它可能会有所帮助。