桑巴权限 – 我要扔它!

我试图在我的Ubuntu 8.04 LTS盒子上设置一个samba共享,以供我的Mac和Windows客户端使用。

我创build了一个'samba'组,并将我的linux用户添加到他们,给他们samba密码,我可以连接和放置文件,除了权限,一切都是桃色。

顺便说一句,默认的家庭共享已被完全删除,以确保它不冲突。

 [档案]
path= /家庭/档案
只读=否
客人ok =是
 browseable =是
创build模式= 0664
目录模式= 0775
强制组=桑巴

目标是让客人可读,完全控制samba用户。 当非访客用户将文件放入归档共享中时,它具有正确的“samba”组,但权限是644而不是预期的664。

我试过改变创build模式和目录模式来创build掩码和目录掩码,以及在它们前面的强制字的每个组合。

我不知道为什么这是行不通的,任何帮助表示赞赏。

发布我的整个smb.conf:

 [全球]
 工作组=示例
 服务器string=%h
 映射到guest = Bad User
 服从pam限制=是的
  passdb后端= tdbsam
  pam密码更改=是
  passwd program = / usr / bin / passwd%u
 密码:*%n \ n * password \ supdated \ ssuccessfully *。
  unix密码同步=是
  syslog = 0
 日志文件= /var/log/samba/log.%m
 最大日志大小= 1000
  dns代理=没有
  usershare allow guests = Yes
 恐慌行动= / usr / share / samba / panic-action%d
 无效的用户= root
 强制创build模式= 0664
 强制目录模式= 0775

 [打印机]
 评论=所有打印机
  path = / var / spool / samba
 创build掩码= 0700
 打印=是
 可浏览=否

 [打印$]
  comment =打印机驱动程序
  path = / var / lib / samba / printers

 [档案]
 path= /家庭/档案
 强制组=桑巴
 只读=否
 创build掩码= 0664
 目录掩码= 0775

 [server_backups]
  path = / home / server_backups
 强制用户= root
 强制组=桑巴
 只读=否
 创build掩码= 0664
 目录掩码= 0775

谢谢,

这可能有帮助。 我做了类似的事情,但只有一个份额是对该组的用户开放的。 其他共享是只读的,除了一个维护者用户。 我的smb.conf中[global]部分与你的几乎完全相同,除非我不使用force create / directory模式指令(在我的情况下,它们会干扰其他共享)。

这是股份定义:

[shared stuff] comment = blah, blah, etc path = /path/to/share write list = @sambagroup force group = +sambagroup read only = yes directory mask = 0775 create mask = 0664 guest ok = yes invalid users = root case sensitive = True default case = lower preserve case = yes short preserve case = yes 

这里的重要内容是:

  • read only = yes – 默认情况下,只读。
  • guest ok = yes – 客人可以浏览。
  • write list = @sambagroupwrite list = @sambagroupauthentication成员可以写。
  • force group = +sambagroup – +意味着这个力只适用于现有的sambagroup成员。 他们已经是唯一可以写作的人了。 我想,没有+, 客人被给予sambagroup证书,这是不希望的(特别是与上面的写列表指令)。
  • directory mask = 0775
  • create mask = 0664

这些操作完全符合你的要求:目录上的“drwxrwxr-x”,文件上的“rwxrwxr-x”以及新创build的文件都由用户和sambagroup拥有 。 其他共享的维护人员在共享内容时与其他人拥有相同的权限,而在其他共享内容时 ,权限和组是正常的。

我的smb.conf一直在通过几个不同版本的Samba进行小小的调整,目前与Samba 3.2.5一起使用。 我从来没有在Ubuntu 8.04上运行它,但是在迁移到最近的Debian Lenny安装之前,它在Ubuntu 7.04上运行了很长时间。

我现在还没有接近活动的Sambaconfiguration,所以我不能检查它是否默认安装在Ubuntu上。 也就是说,在你的smb.conf中查看是否有“创build掩码”语句。 你可能会发现它设置为022,你需要清除组位(设置为002或只是整个行)。

还要注意,“创build模式”与“创build模板”是同义的。