![有没有什么干净的方法来为多个家庭创建 samba 共享?](https://linux22.com/image/12208/%E6%9C%89%E6%B2%A1%E6%9C%89%E4%BB%80%E4%B9%88%E5%B9%B2%E5%87%80%E7%9A%84%E6%96%B9%E6%B3%95%E6%9D%A5%E4%B8%BA%E5%A4%9A%E4%B8%AA%E5%AE%B6%E5%BA%AD%E5%88%9B%E5%BB%BA%20samba%20%E5%85%B1%E4%BA%AB%EF%BC%9F.png)
我为每个用户的 /home/username 目录使用 [homes] 部分。 smb.conf中的代码是这样的
[homes]
comment = Home Directories
browseable = no
read only = no
create mask = 0664
directory mask = 2775
valid users = %S
但我还有第二个磁盘,我想为上面的每个人创建 /home2/username 。现在我像这样为每个用户添加一条路径,这太乏味了。
[jack2]
browseable = no
path = /home2/jack
read only = no
create mask = 0664
directory mask = 2775
valid users = jack
[fiona2]
browseable = no
path = /home2/fiona
read only = no
create mask = 0664
directory mask = 2775
valid users = fiona
...
我希望有类似的东西(这不起作用)
[%S2]
browseable = no
path = /home2/%S
read only = no
create mask = 0664
directory mask = 2775
valid users = %S
所以我不需要为它们添加每一个(共享名称的名称后面附加有“2”,以将其与普通家庭区分开来)。有可能吗?
我是我们私人服务器的管理员。我还使用了 lvm,但由于我是 lvm 的新手,并且出于可靠性原因,我没有将所有磁盘合并为一个整体,因此每个磁盘都有其主目录。
谢谢
答案1
我认为您正在手动创建用户目录(Samba 不会自动执行此操作)您可以在 [homes] 共享中使用“root preexec”参数来运行脚本以在用户连接时创建目录,您可以还创建一个名为“[users]”的新共享并执行类似的操作。