为什么其他用户看不到我发布到 Samba 共享的文件?

为什么其他用户看不到我发布到 Samba 共享的文件?

我运行一个使用 samba 和 greyhole 进行文件共享的 Amahi 服务器。当我将文件复制到其中一个共享时,其他人无法看到它。如果另一个用户将文件添加到共享,他们会成功,但刷新后,他们就无法再看到该文件了。该文件在共享中,我可以看到它。

4-6 周前创建的所有文件都可供任何人查看。我无法确定可能发生了什么变化。上次重启是 60 天前

这感觉像是与 Samba 相关的问题但我无法查明它。

我检查过的内容:Linux 权限 - 所有文件 (/var/hda/files/tv/) 都归我的 amahi/linux 用户(不是 root)和用户组所有。所有用户都属于同一组。该组具有 RW 权限。Samba 权限 - 共享使用用户权限,用户具有 RW。创建掩码为 0755

我对电视路径运行了 greyhole fsck,没有任何变化

以下是两个文件的当前权限:

    Failed file ( as root)
-rwxrwxr-x 1 gmartin users 205775332 May  4 20:48 /var/hda/files/drives/drive1/gh/TV/SomeShow/SomeShow-S01E02.avi

Successful file (as wdtv)
-rwxrwxr-x 1 gmartin users 257642672 Apr 13 21:55 /var/hda/files/drives/Drive6/gh/TV/SomeShow/SomeShow-S01E05.avi

信息:Fedora Core 23 Amahi 9.0.0-1 Core 7.0.0-1 samba v 4.3.12 greyhole 0.10.6

客户端:Win10 (1703)、WDTV Live

答案1

Greyhole 的工作原理是将您添加到共享中的实际文件移动到其他驱动器上。因此,一旦 Greyhole 移动文件并在 中留下符号链接/var/hda/files/,如果您的用户没有访问现在位于另一个驱动器上的文件所需的权限,这些用户将能够读取符号链接,但不能读取其目标,因此该文件将被 Samba 隐藏。

以有问题的用户身份登录(使用 SSH;sudo如果需要,请使用),然后查看/var/hda/files/此用户在共享中看不到的符号链接。查看该符号链接的目标,并尝试访问该文件。您很可能会发现无法访问。您可能需要chown/chmod -R所有数据驱动器(它们是否仍安装在 中/var/hda/drives?)

更新: 我在 wiki 上添加了一个关于此问题的页面,其中包含示例:https://github.com/gboudreau/Greyhole/wiki/Permissions-Data-Drives

更新 2:尝试这个:

$ chown -R gb:users /var/hda/files/drives/*
$ find /var/hda/files/drives/* -type d -exec chmod 775 "{}" \; # Permissions for directories
$ find /var/hda/files/drives/* -type f -exec chmod 664 "{}" \; # Permissions for files

根据需要更改gb:users775664

相关内容