Linux/Samba Windows7 和基于每个用户的权限

Linux/Samba Windows7 和基于每个用户的权限

我想正确设置我的 NAS 的用户和组权限。

虽然这对于使用 NFS 的所有 Linux 机器来说都很容易实现,但我无法让它与 Windows 和 Samba 一起工作,在这种情况下是 Windows7 和 Samba 3.5.2。基本功能可以工作,尤其是所有公开的和可由“其他人”写入的内容。但当然这只是一半。

我的用户名daddy在所有 Linux 和 Windows 上都是相同的,我的(明文)密码也始终相同。在 NAS 和 Linux 上,daddy特别属于组familyeverybody。我有一个特定的共享,只有 (Linux) 用户family和属于组的用户才能访问family。在共享中,有一个名为“private”的目录,它属于family:family并将其权限设置为 770。

该共享具体有以下设置:

browsable = yes
public = yes
invalid users = "guest"
write list = @"family","family"
valid users = "root",@"family","family"
inherit permissions = yes

我可以从 Windows 计算机访问共享,而无需输入用户名/密码。使用 Windows,我可以创建一个文件并使用它。在 NAS 上,该文件将由具有daddy:everybody666 权限掩码的人拥有。因此,显然我的 Windows/Linux 用户名之间的映射是神奇的。

无法访问“私有”。Windows 告诉我我没有所需的权限。当然,使用 Linux 和 NFS 可以,因为是daddy组 的成员。奇怪的是,samba 一定也建立了和family之间的连接,否则它不会让我在该共享上创建和编辑文件。daddyfamily

我将smbd的日志级别设置为 1023,但我得到的只是大文件,没有我可以处理的信息。grep daddy log*甚至没有任何结果。但是,我有时会看到这种情况:

log.192.168.0.10:[2014/01/05 18:46:29.919729,  5] smbd/uid.c:369(change_to_root_user)
log.192.168.0.10:  change_to_root_user: now uid=(0,0) gid=(0,0)
log.192.168.0.10:  smb_uid=0
log.192.168.0.10:  smb_uid=0

我尝试将 Samba 共享静态映射到驱动器号。执行此操作时,可以选择一个复选框,让我提供不同的用户名/密码来连接共享。当我执行此操作并提供daddy我的密码时,Windows 将重新提示我输入用户名密码...我认为这意味着提供的用户名/密码不正确。然而,NAS 上的 Samba 日志文件不会记录失败的连接尝试。

到目前为止,我甚至不知道需要修复什么 Linux 用户设置、Windows 用户设置、Samba 还是其他什么?!如能帮助解决此问题并使目录“私有”仅供属于特定组的用户访问,我们将不胜感激!

相关内容