我有一台装有 Raspbian Buster 的 Raspberry Pi 3 B+,上面正在运行 Samba AD DC。一切正常,我使用 Windows 上的 Active Directory 用户和计算机以及计算机管理来控制用户和 Samba 共享权限。到目前为止,一切正常,但在 Windows 上出现以下错误。
如果有一个由 mkdir 命令创建的共享目录,并且 UNIX 用户是所有者和/或 UNIX 组是组所有者,则 Windows 中会发生以下情况。
- 我右键单击共享目录,选择“属性”,然后在属性窗口中选择“安全”选项卡,explorer.exe 崩溃并且属性窗口关闭。
如果在 Windows 上创建目录,则不会发生这种现象。
我在 samba.org 上找到了有关此问题的邮件主题:
https://lists.samba.org/archive/samba/2018-August/217676.html
但不幸的是,该线程以没有解决方案结束。怀疑这是一个与 Windows 操作系统相关的错误。也许有人遇到过这个错误(错误?)并可以提供帮助?
samba 版本是 4.9.5-Debian,客户端机器的操作系统是 Windows 10 (1903)。这个错误在所有 Windows 机器上都会发生。我在 Windows 7 机器上也试过了,情况是一样的。
谢谢你!
答案1
这是因为您的共享的 ACL 不正确。
第一次尝试:
samba-tool ntacl get --as-sddl /var/lib/samba/sysvol/SAMDOM/scripts
将 SAMDOM 替换为您的域名。您可以输入以下命令找到它:
cat /etc/samba/smb.conf
运行 samba-tool 命令后,这将为您提供类似这样的基线:
O:LAG:BAD:P(A;OICI;0x001f01ff;;;BA)(A;OICI;0x001200a9;;;SO)(A;OICI;0x001f01ff;;;SY)(A;OICI;0x001200a9;;;AU)
然后尝试编写此 ACL:
samba-tool ntacl set "O:LAG:BAD:P(A;OICI;0x001f01ff;;;BA)(A;OICI;0x001200a9;;;SO)(A;OICI;0x001f01ff;;;SY)(A;OICI;0x001200a9;;;AU)" /srv/samba/Demo
将 /srv/samba/Demo 替换为存储文件共享的文件夹路径。
另外请确保将此文件夹的 chmod 设置为 0770
chmod 0770 /srv/samba/Demo/
这应该可以解决你的问题,请让我知道你的进展如何!