Активируйте ACL для пула zfs Ubuntu 13.04

Я протестировал ACL для локальных папок, и я отлично работаю.

Но в моем пуле zfs, называемом «tank»

root@datacenter:/mnt# ls
datatank  test  webmin_1.650_all.deb
root@datacenter:/mnt# setfacl -m u:casper:rwx datatank
setfacl: datatank: Operation not supported

Как добавить поддержку acl для моей системы zfs?

Что не так?

7
задан 8 September 2013 в 16:56

2 ответа

Используйте

zfs set acltype=posixacl tank/datatank
0
ответ дан 8 September 2013 в 16:56
1116 Я довольно новичок в ZFS, но я только что столкнулся с этой проблемой.

ZFS имеет 2 свойства ACL: "aclinherit" & amp; «aclmode» , хотя мне не удалось заставить aclmode работать должным образом, но я думаю, что это было недавно устарело.

Кроме того, эти 2 свойства имеют несколько режимов.

  • aclinherit: определяет поведение наследования ACL. Значения включают следующее:

    • discard - Для новых объектов записи ACL не наследуются при создании файла или каталога. ACL для файла или каталога соответствует режиму доступа к файлу или каталогу.
    • noallow - для новых объектов наследуются только наследуемые записи ACL с типом доступа deny.
    • ограничено - для новых объектов разрешения write_owner и write_acl удаляются при наследовании записи ACL.

    • passthrough - когда для свойства установлено значение passthrough, файлы создаются в режиме, определяемом наследуемыми ACE. Если не существует наследуемых ACE, которые влияют на режим, тогда режим устанавливается в соответствии с запрошенным режимом из приложения.

    • passthrough-x - имеет ту же семантику, что и passthrough, за исключением того, что когда passthrough-x включен, файлы создаются с разрешением execute (x), но только если разрешение на выполнение установлено в режиме создания файла и в наследуемом ACE, который влияет на режим.

  • aclmode: (опять же, я не смог заставить его работать на моей версии, так что будьте осторожны!) изменяет поведение ACL при первоначальном создании файла или всякий раз, когда режим файла или каталога изменяется командой chmod. Значения включают следующее:

    • discard - удаляются все записи ACL, за исключением записей, необходимых для определения режима файла или каталога.

    • groupmask - Разрешения ACL пользователя или группы уменьшаются, так что они не превышают биты разрешения группы, если только это не запись пользователя, имеющая тот же UID, что и владелец файла или каталога. Затем разрешения ACL уменьшаются, так что они не превышают биты прав владельца.

    • passthrough - Во время операции chmod ACE, кроме владельца @, группы @ или всех @, не изменяются никаким образом. ACE с владельцем @, группой @ или всеми @ отключены для установки режима файла в соответствии с запросом операции chmod.

Например, вы должны установить acl для «tank / datatank» (не ваша точка монтирования, а фактический пул) следующим образом:

zfs set "ACL-PROPERTY"="ACL-MODE" tank/datatank

более конкретно

zfs set aclinherit=passthrough tank/datatank

Источники:

http://docs.oracle.com/cd/E19120-01/open.solaris/817-2271/gbaaz/index.html [ 112]

https://mywushublog.com/2012/05/zfs-and-acls-with-samba/

0
ответ дан 8 September 2013 в 16:56

Другие вопросы по тегам:

Похожие вопросы: