Кто-нибудь разбирался с zfs acl-ами во фре?
Поставил freebsd 8.0, накатил патч из этой темы: http://forums.freebsd.org/showthread.php?t=10505 , который добавляет NFSv4 acl-ы. Но никак не получается раздать права так, чтобы две группы могли равноправно редактировать один каталог (и его подкаталоги/файлы).
Делаю так:setfacl -m group@:rwxpAW:fd:allow,group@::fd:deny test
# getfacl test
# file: test
# owner: root
# group: admin
owner@:--------------:------:deny
owner@:rwxp---A-W-Co-:------:allow
group@:--------------:fd----:deny
group@:rwxp---A-W----:fd----:allow
everyone@:-w-p---A-W-Co-:------:deny
everyone@:r-x---a-R-c--s:------:allow
Вроде бы то, что нужно: содержимое каталога можно редактировать всем, кто входит в группу. Но в подкаталогах права съезжают:
# getfacl test/a
# file: test/a
# owner: kildushov
# group: admin
group@:--------------:fdi---:deny
group@:--------------:------:deny
group@:rwxp---A-W----:fdi---:allow
group@:-------A-W----:------:allow
owner@:--------------:------:deny
owner@:rwxp---A-W-Co-:------:allow
group@:-w-p----------:------:deny
group@:r-x-----------:------:allow
everyone@:-w-p---A-W-Co-:------:deny
everyone@:r-x---a-R-c--s:------:allow
Появляются 6 и 7 запись, которые собственно и мешают что-либо делать внутри этого каталога тем, кто входит в группу владельца.Как быть?
Вообще задача стоит такого плана: каталог и его содержимое нужно редактировать нескольким группам (причем без ограничений), а всем остальным, не входящим в эти группы - запрещено даже читать из него.ps: в posix-acl-ах это реализуется двумя командами:
setfacl -d -m u::rwx,g::rwx,o::---,g:group2:rwx,g:group3:rwx folder
setfacl -m u::rwx,g::rwx,o::---,g:group2:rwx,g:group3:rwx folder
pps: пытался сделать zfs set aclmode=passthrough store , на что получаюproperty 'aclmode' not supported on FreeBSD: permission denie
>pps: пытался сделать zfs set aclmode=passthrough store , на что получаюproperty
>'aclmode' not supported on FreeBSD: permission denieА пул вы обновили до 14-ой версии?
>>pps: пытался сделать zfs set aclmode=passthrough store , на что получаюproperty
>>'aclmode' not supported on FreeBSD: permission denie
>
>А пул вы обновили до 14-ой версии?да. Патчем по ссылке, приведенной выше. ядро/мир пересобирал.
$ zpool upgrade -v
This system is currently running ZFS pool version 14.
Нашел решение: наложить патч отсюда http://lists.freebsd.org/pipermail/svn-src-head/2009-October... и пересобрать мир.
после этого aclmode и aclinherit работают и права нормально наследуются.
Поскольку в stable-ветке этого патча нет, используйте _на свой страх и риск_ (хотя у меня никаких проблем не возникло).
Блин, появился новый вопрос, из-за которого уже готов повеситься.
Как запретить всем, кроме указанных в ACL групп, читать содержимое файлов/каталогов?
делаю такую конструкцию:
store# setfacl -m owner@::fd:deny,owner@:rwxpaARWcCos:fd:allow,group@:rwxpaARWcCos:fd:allow,group@::fd:deny,everyone@:rwx:fd:deny,everyone@::fd:allow testf
store# getfacl testf
# file: testf
# owner: root
# group: admin
owner@:--------------:fd----:deny
owner@:rwxp--aARWcCos:fd----:allow
group@:--------------:fd----:deny
group@:rwxp--aARWcCos:fd----:allow
everyone@:rwx-----------:fd----:deny
everyone@:--------------:fd----:allow
Из линкуса по смб все работает: все пользователи, входящие в группу admin видят эту папку, могу в нее заходить, редактировать, создавать файлы и т.п.
Из винды под теми же пользователеми - не работает, папку даже не видно, доступа нет. Если убрать everyone@:r:deny - из винды работает, НО - теперь читать из этой папки может вообще любой, даже не входящий в группу админ.Помогите, что делать?!