Makin
@Makin
Web designer

Как распределить права доступа на папки в Ubuntu Server?

Доброго времени суток!
Итак, описание проблемы:
Небольшой офис, 8 windows машин, пару маков, сервер на Ubuntu Server. На сервере файловое хранилище и тестовые площадки под внутренние нужды офиса. Поднята самба в локалку. На файлопомойке три основные папки - одна общая, куда ходят все без учеток и паролей, и две закрытые для бухгалтера и админа. И все нормально, все работает, все пользуются, пока бухгалтер или админ не начинают создавать папки или файлы в общей папке. По умолчанию, от других юзеров (без учеток и паролей) папки и файлы создаются от имени nobody и группы nogroup и все имеют к ним доступ. А папки, создаваемые бухгалтером и админом, получают права их имен и их групп, соответственно все остальные юзеры доступа к ним не имеют. А хотелось бы бы наоборот.
И теперь вопрос: как сделать так, чтобы бухгалтер и админ ходили в свои закрытые папки, создавали в них папки и файлы от своих имен и групп, но в то же время могли создавать папки и файлы в общей папке, чтоб все могли получать к ним доступ.
  • Вопрос задан
  • 671 просмотр
Решения вопроса 2
jamakasi666
@jamakasi666 Куратор тега Linux
Просто IT'шник.
не надо никаких кронов с чмодами. Почитайте про create mask\force create mode\directory mask\force directory mask.
Ответ написан
Makin
@Makin Автор вопроса
Web designer
В итоге вопрос решил, но другим способом. Изначально пошел по пути, подсказанном Дмитрий Александров , почитал про create mask\force create, и пока знакомился с этой информацией, нашел другой способ - в конфиг самбы расшареной папки (/etc/samba/smb.conf) добавляются параметры строгого назначения группы и пользователя (force group и force user). В итоге в нужном каталоге все файлы и папки создаются только от указанных группы и пользователя, независимо, кто и с какими правами их создает. Пример конфига конкретной папки:

[Server storage]
comment = Общие файлы
path = /путь к шаре
writeable = yes
browseable = yes
guest ok = yes
read only = no
create mask = 0775
directory mask = 0775
force group = nogroup
force user = nobody

Может кому пригодится.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы