如何在Samba中将某些目录列入黑名单?


8

我正在通过Samba将目录导出到我的家庭影院PC。不幸的是,XBMC还显示了一些我正在该目录中共享的工作目录。

我想找到一种方法,让Samba忽略某些目录,以使它们不与其他PC共享。

这纯粹是出于虚荣的原因,因此解决方案不需要完全完美(因此,解决方法很好,不一定要具有生产质量)

Answers:


8

我在想这veto files是您要寻找的选择。

/etc/samba/smb.conf使用根权限编辑。在特定share之下/var/test,以下设置将排除任何后代子目录或文件匹配项foo*bar*(请注意,/表示OR):

[myshare]
  path = /var/test
  veto files = /foo/*bar*/

然后,您需要使用stopstart(不是reload)重新启动Samba :

sudo /etc/init.d/samba stop
sudo /etc/init.d/samba start

注意:通过Nautilus GUI创建的共享在的单个文件中定义,/var/lib/samba/usershareveto files 不能在其中应用。如果是您的情况:

  • 要么添加veto files到的[global]部分/var/lib/samba/usershare。这将影响您的所有全球份额。
  • 或者删除下的现有共享定义文件,/var/lib/samba/usershare然后在下手动重新创建它/etc/samba/smb.conf。您无法复制粘贴;相反,请按照指南进行操作

2
模式中的/字符veto files不是目录分隔符。在上面的例子,只要你加/在最后使其语法正确的,无论是命名的任何文件或目录vartestprivate将被隐藏。
Lars Haugseth

桑巴可以读取“否决文件”中的列表? serverfault.com/questions/923647/…–
ajcg

1

hide files = file1/file2/$*/System Volume Information 也隐藏共享文件夹

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.