我正在使用在 Windows 上运行的代码批量处理存储在 Unraid 阵列上的大量视频文件,并通过 SMB 访问阵列上的文件。每当我创建一个新的 MKV 文件时,它最终都会被标记为用户可执行(它不是可执行文件类型),并且每个人都具有读/写权限(766)。我希望权限为 664(每个人都可读,用户和组可写,任何人都不能执行)。
由于 Windows 没有与 chmod 等效的命令,我能否至少以某种方式为任何新创建的文件设置默认权限?我还希望新目录的默认权限为 775。
答案1
事实并非如此,文件权限由主机设置 - SMB 协议看不到或发送 unix 权限。
看起来您通常可以通过在 Linux 端设置来修复执行位map archive = no
。/etc/samba/smb.conf
但在 Windows 端,您可能能够取消设置存档属性(Samba 映射到o+x
)。例如,在 CMD 中,您可以运行attrib -a filename
(或+a
添加)。
其余文件权限由其余 samba 配置、samba 用户的权限、父文件夹的权限以及服务器端的文件 ACL(如果有)的组合决定。