Я думаю, veto filesчто это вариант, который вы ищете.
Редактировать /etc/samba/smb.confс правами root. В конкретном общем ресурсе /var/testследующий параметр исключит любой дочерний подкаталог или соответствующий файл fooили *bar*(остерегайтесь, /означает ИЛИ ):
[myshare]
path = /var/test
veto files = /foo/*bar*/
Затем вам нужно перезапустить Samba с помощью stopи start(не reload):
sudo /etc/init.d/samba stop
sudo /etc/init.d/samba start
Примечание. Общие ресурсы, созданные с помощью графического интерфейса Nautilus, определены в отдельных файлах, /var/lib/samba/usershareно veto files не могут применяться там . Если это ваш случай:
- Либо добавить
veto filesв [global]раздел /var/lib/samba/usershare. Это повлияет на все ваши глобальные акции.
- Или удалите существующий файл определения общего ресурса в
/var/lib/samba/usershareи заново создайте его вручную в /etc/samba/smb.conf. Вы не можете скопировать вставить; вместо этого следуйте руководству .
/вveto filesшаблоне не является разделителем каталогов. В приведенном выше примере, если вы добавите/в конце , чтобы сделать его синтаксический правильно, любые файлы или каталоги с именем либоvar,testилиprivateбудете скрыты.