我想在使用 ZFS 进行文件存储的 FreeBSD 主机上设置 Samba 域控制器。
当我尝试samba-tool domain provision
按照有关设置域控制器的 Samba Wiki 文章,我收到一条错误消息,提示我需要启用 POSIX ACL。根据FreeBSD 的 ZFS 页面,FreeBSD 上的 ZFS 仅支持 NFSv4 样式的 ACL,尽管目前已完全实现,但与 POSIX 样式的 ACL 不兼容。
然后我遇到了一个非官方的在 FreeBSD 上设置 Samba 域控制器的指南,解决方案是--use-ntvfs
在调用时提供标志samba-tool
,我可以确认这是有效的。然而,根据Samba 上 AD DC 的功能状态,NTVFS 功能已于 2010 年弃用,这看起来不太乐观。
现在我处于一个十字路口。我能想到两种方法来设置这个 DC,即使用--use-ntvfs
或创建一个卷并用 UFS 格式化它。但我无法预见这些解决方案的优缺点。
使用 的后果是什么--use-ntvfs
? 这是事后可以更改的内容吗?还是我必须坚持选择,直到我提供一个全新的域?
答案1
忘记 Samba 中的 POSIX.1e ACL - 它们毫无意义,因为 Windows 使用的 ACL 模型与 POSIX.1e 完全不同,并且不可能在两者之间正确转换(这并不妨碍某些人,特别是 Linux kenrel 社区的人尝试 - 但由于设计原因,它无法正常工作)。使用 NFSv4 ACL,它们与 Windows 使用的几乎相同。
至于编译 - 实际上,Samba 端口和包默认使用 ACL 支持构建。只需确保始终设置“aclmode=passthrough”和“aclinherit=passthrough”ZFS 属性;否则继承根本不起作用。
答案2
如果你不介意工作的话,你可以尝试一下: https://sourceforge.net/projects/libsunacl/
我猜这需要一些编译。您可以在此处找到更多信息:https://wiki.freebsd.org/NFSv4_ACLs