| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > *NIX системы: Общие вопросы > samba и acl наследование прав доступа |
| Автор: Хоббит 5.6.2010, 13:01 |
| Debian 5.0, Samba, Acl Есть структура директорий. /var/project/... и.т.д. Все начиная от project имеет владельца project:project и права директории 770, файлы 660. Где то в глубине этой структуры есть директория share к которой надо дать доступ разным пользователям (например user) через samba. При этом группу менять нельзя и user этой группе не принадлежит. При создании директорий в папке share они должны иметь права 770, файлы в них 660 и быть также доступны для user. Используем acl. Делаем chmod g+s share ... чтобы создаваемые файлы и папки имели группу project Делаем setfacl -m u:user:rx для все директорий до share ... для того, чтобы user мог дойти до этой директории Делаем setfacl -m u:user:rwx для директории share и всех ее поддиректорий... для того, чтобы пользователь мог что-то создавать в этой директории Делаем setfacl -m u:user:rw для всех подфайлов директории share В samba пишем directory mask = 770 create mask = 660 inherit acls = yes inherit permissions = yes # без этого предыдущая строка не работает!!! map acl inherit = yes map archive = no map system = no map hidden = no После пробуем создать папку и файл в директории share через samba из под user. Получаем Папку с правами 770 и владельцем user:project (все как и надо) и Файл с правами 670 и владельцем user:project Вопрос откуда взялось право на выполнение для группы? По идее inherit permissions заставляет наследовать права от родительской папки (у которой они 770), но для файлов правом на выполнение управляют флаги map archive, map system, map hidden. Но они все установлены в no. Убрать sgid с share тоже не помогает. Это влияет только на группу владельца, а право на выполнение группы для файлов остается. Что не так. Как можно добиться моей цели. И почему inherict acls не работает без inherit permissions? |
| Автор: Хоббит 5.6.2010, 14:20 |
| Дополнение. Можно поставить на папку share default права. setfacl -m d:u:user:rwx share Тогда acl права наследуются не зависимо от того стоит ли inherit acls или нет. Но проблема с правом запуском для группы у файлов не пропала. |
| Автор: mihanik 7.6.2010, 15:56 |
| А если это дело скрестить с виндовой AD и права раздавать на шару в соответствии с виндовыми пользователями? |