Samba 访客账户不在组中?

Samba 访客账户不在组中?

我的 samba 配置如下:

[global]
    security = user
    guest account = nobody

[media]
    path = /data/media
    browsable = yes
    guest ok = yes
    guest only = yes
    read only = no
    create mask = 0765

运行正常 - Windows 客户端以访客身份浏览共享并映射到 nobody 帐户。但是我遇到了一个奇怪的问题。

如果我有一个无人拥有的文件,例如:

-rwxrw-r--   1 nobody media   252125 Dec 18  2011 rss.dat

我的 Windows 客户端可以对文件做任何他们想做的事情。但是,如果文件不属于任何人:

-rwxrw-r--   1 user   media   252125 Dec 18  2011 rss.dat

然后我的 Windows 客户端无法触碰该文件,Windows 总是说您需要“SERVER\user”的权限才能更改该文件。然而没有人在媒体组中:

# From /etc/group
media:x:1002:user,nobody

那么,由于组权限,nobody 用户是否应该能够更改文件?还是我遗漏了 Samba 的某些特殊功能?

谢谢!

答案1

我认为这是一个问题,因为您的用户没有将媒体作为主要组。因此您的 Windows 客户端尝试将文件写入用户.用户代替用户媒体。解决这个问题的一个简单方法是chown所有文件没人.媒体代替/数据/媒体您正在分享并强迫客户写成没人.媒体. 你的 smb.conf 看起来应该像这样

[global]
    security = user
    guest account = nobody

[media]
    path = /data/media
    browsable = yes
    guest ok = yes
    guest only = yes
    read only = no
    create mask = 0765
    force user = nobody
    force group = media

相关内容