我正在为一个小组设置文件共享(FreeNAS 上的 CIFS/samba,因此基本系统是使用 ACL 的 FreeBSD/ZFS)。
我希望允许用户将内容放入共享的文件夹中 - 但一旦写入就无法读取共享的内容。由于他们无法读取共享内容或获取目录列表,因此共享将是“扁平”的(没有子目录),并且他们不能覆盖或更改已经存在但看不见的文件,因为他们看不到它们以避免覆盖,因为它允许探测存在或不存在的文件名。
有没有办法做到这一点?
答案1
如果您想让文件无法访问,那么为什么不使用 cron 将已写入的文件从该共享移至其他共享。
在这种情况下,这有点像假脱机目录。仍然存在两个问题:
1) 较大的文件可以在用户仍在写入时移走。 2) 您需要处理用户保存的文件与目标目录中的文件冲突的情况。
这些情况很危险,因为您可能会丢失数据。
或者,rsync 也可能拥有解决问题的所有工具,因为有一个选项可以进行备份,还有一个选项可以确保您永远不会删除文件。
答案2
我不太确定,但您应该能够按照如下所述进行操作。
授予仅应用于此文件夹的用户组的写入权限。 (这是“高级”页面上提供的选项。)
如果每个用户需要对其删除的文件拥有特定权限,您可以为创建者所有者众所周知的安全标识符 (SID) 创建权限条目,并将其仅应用于子文件夹和文件。例如,您可以向创建者所有者 SID 授予放置文件夹的读写权限,并将其应用于所有子文件夹和文件。这将授予删除或创建该文件的用户(创建者所有者)读取和写入该文件的能力。然后,创建者所有者可以使用 \ServerName\DropFolder\FileName 通过运行命令访问该文件。
向群组管理员授予完全控制权限。
引用自微软TechNet:文件服务器上的共享和 NTFS 权限。