11

У меня есть сервер Ubuntu в моем доме под управлением Samba. Я пытаюсь настроить общий доступ к samba, чтобы все имели права на чтение и запись.

У меня есть все пользователи в группе unix 'sambashare', и я хочу предложить каталог /data /shared всем членам группы 'sambashare' для чтения и записи.

В идеале, если пользователь создает файл там, используя samba, он должен иметь права 0644 и принадлежать имени пользователя:sambashare.

Я не могу понять, что поместить в файл smb.conf, чтобы сделать эту работу, или какие разрешения unix дать папке /data /shared.

3 ответа3

7

В smb.conf, в разделе общего каталога, поместите:

create mask = 0644
directory mask = 2777

Сначала используйте разрешение g+s для всех каталогов и добавьте их в группу sambashare. Бит s сохранит группу созданных файлов такой же, как и группу каталогов (а 2777 позаботится о бите s в новых каталогах).

4

Чтобы разрешить всем участникам группы SAMBASHARE доступ к общим ресурсам, добавьте в директиву [global] :

create mode = 664
workgroup = SAMBASHARE
security = SHARE
usershare allow guests = yes

Для экспорта /data/shared вы должны добавить следующее в конец файла:

[data]
comment = shared
path = /data/shared
guest ok = yes
read only = no
public = yes
writable = yes

Это должно работать для вас, но я настоятельно рекомендую , чтобы собрать немного больше информации.

1

Пройдя через эту же проблему и увидев множество бесполезных постов, "решающих" эту проблему, я наконец-то проследил свою проблему до одной строчки в определенном разделе общего ресурса, который я хотел записать в группу:

 force directory mode = 2770

"2" является ОБЯЗАТЕЛЬНЫМ, и сервер Samba не сделает вновь созданные каталоги доступными для записи в группе без этого (т. Е. 0770 НЕ достаточно). Я использую демон Samba в Ubuntu 12.04.01 со стандартным Windows-клиентом для создания каталога.

Было бы хорошо, если бы это было задокументировано на справочной странице smb.conf .....

Просто для пояснения, следующее НЕ работает для меня (даже с "unix extensions = off" - каталоги создаются с разрешения 0750):

[MyShare]
   writeable = yes
   force group = somegroup
   ...
   directory mask = 0770
   directory security mask = 0770
   force directory mode = 0770
   force directory security mode = 0770

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .