JavaScript is required to for searching.
Ignorar Links de Navegao
Sair do Modo de Exibio de Impresso
Guia de administração do ZFS Oracle Solaris
search filter icon
search icon

Informação sobre o documento

Prefácio

1.  Sistema de arquivos Oracle Solaris ZFS (introdução)

2.  Introdução ao ZFS do Oracle Solaris

3.  Diferenças entre o sistema de arquivos tradicional e o ZFS do Oracle Solaris

4.  Gerenciando conjuntos de armazenamento ZFS do Oracle Solaris

5.  Instalando e inicializando um sistema de arquivos raiz ZFS do Oracle Solaris

6.  Gerenciando sistemas de arquivos ZFS do Oracle Solaris

7.  Trabalhando com instantâneos e clones do ZFS do Oracle Solaris

8.  Uso de ACLs e atributos para proteger arquivos ZFS do Oracle Solaris

Novo modelo de ACL do Solaris

Descrições de sintaxe para definição de ACLs

Herança da ACL

Propriedade da ACL (aclinherit)

Definindo ACLs em arquivos ZFS

Definindo e exibindo ACLs em arquivos ZFS no formato verboso

Definindo a herança da ACL em arquivos ZFS no formato verboso

Definindo e exibindo ACLs em arquivos ZFS no formato compacto

9.  Administração delegada do ZFS do Oracle Solaris

10.  Tópicos avançados do ZFS do Oracle Solaris

11.  Solução de problemas e conjunto de recuperação do Oracle Solaris ZFS

A.  Descrição da versão do ZFS do Oracle Solaris

Índice

Definindo e exibindo ACLs em arquivos ZFS no formato verboso

O comando chmod pode ser usado para modificar as ACLs em arquivos ZFS. A sintaxe de chmod abaixo para a modificação de ACLs usa acl-specification para identificar o formato da ACL. Para obter uma descrição de acl-specification, consulte Descrições de sintaxe para definição de ACLs.

As informações detalhadas da ACL são exibidas com o comando ls - v. Por exemplo:

# ls -v file.1
-rw-r--r--   1 root     root      206663 Jun 23 15:06 file.1
     0:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     1:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     2:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

Para obter mais informações sobre o uso do formato compacto da ACL, consulte Definindo e exibindo ACLs em arquivos ZFS no formato compacto.

Exemplo 8-1 Modificando ACLs comuns em arquivos ZFS

Esta seção oferece exemplos de configuração e exibição de ACLs comuns.

No exemplo abaixo, existe uma ACL comum no file.1:

# ls -v file.1
-rw-r--r--   1 root     root      206663 Jun 23 15:06 file.1
     0:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     1:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     2:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

No exemplo abaixo, as permissões write_data são concedidas a group@.

# chmod A1=group@:read_data/write_data:allow file.1
# ls -v file.1
-rw-rw-r--   1 root     root      206663 Jun 23 15:06 file.1
     0:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     1:group@:read_data/write_data:allow
     2:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

No exemplo abaixo, as permissões no file.1 são redefinidas como 644.

# chmod 644 file.1
# ls -v file.1
-rw-r--r--   1 root     root      206663 Jun 23 15:06 file.1
     0:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     1:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     2:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

Exemplo 8-2 Definindo ACLs não-comuns em arquivos ZFS

Esta seção oferece exemplos de definições e exibições de ACLs não-comuns.

No exemplo abaixo, as permissões read_data/execute são adicionadas ao usuário gozer no diretório test.dir.

# chmod A+user:gozer:read_data/execute:allow test.dir
# ls -dv test.dir
drwxr-xr-x+  2 root     root           2 Jun 23 15:11 test.dir
     0:user:gozer:list_directory/read_data/execute:allow
     1:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     2:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     3:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

No exemplo abaixo, as permissões read_data/execute são removidas do usuário gozer.

# chmod A0- test.dir
# ls -dv test.dir
drwxr-xr-x   2 root     root           2 Jun 23 15:11 test.dir
     0:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     1:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     2:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Exemplo 8-3 A interação da ACL com permissões em arquivos ZFS

Estes exemplos de ACL ilustram a interação entre definir ACLs e alterar os bits de permissão do arquivo ou diretório.

No exemplo abaixo, existe uma ACL comum em file.2:

# ls -v file.2
-rw-r--r--   1 root     root       49090 Jun 23 15:13 file.2
     0:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     1:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     2:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

No exemplo abaixo, as permissões allow da ACL são removidas de everyone@ .

# chmod A2- file.2
# ls -v file.2
-rw-r-----   1 root     root       49090 Jun 23 15:13 file.2
     0:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     1:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow

Nesta saída, os bits de permissão do arquivo são redefinidos de 644 para 640. As permissões de leitura de everyone@ foram removidas com sucesso dos bits de permissão do arquivo quando as permissões allow da ACL foram removidas de everyone@.

No exemplo abaixo, a ACL existente é substituída pelas permissões read_data/write_data em everyone@.

# chmod A=everyone@:read_data/write_data:allow file.3
# ls -v file.3
-rw-rw-rw-   1 root     root       27482 Jun 23 15:14 file.3
     0:everyone@:read_data/write_data:allow

Nessa saída, a sintaxe chmod substitui com sucesso a ACL existente pelas permissões read_data/write_data:allow para permitir leitura/gravação em owner, group e everyone@. Nesse modelo, everyone@ especifica para qualquer usuário ou grupo. Visto que não existe nenhuma entrada ACL de owner@ ou de group@ para substituir as permissões para proprietário e grupo, os bits de permissão são definidos como 666.

No exemplo abaixo, a ACL existente é substituída pelas permissões de leitura no usuário gozer.

# chmod A=user:gozer:read_data:allow file.3
# ls -v file.3
# ls -v file.3
----------+  1 root     root       27482 Jun 23 15:14 file.3
     0:user:gozer:read_data:allow

Nessa saída, as permissões do arquivo são calculadas para que sejam 000 porque não existe nenhuma entrada ACL em owner@, group@ ou everyone@, o que representa os componentes de permissões tradicionais de um arquivo. O proprietário do arquivo pode solucionar esse problema redefinindo as permissões (e a ACL) da seguinte forma:

# chmod 655 file.3
# ls -v file.3
-rw-r-xr-x   1 root     root       27482 Jun 23 15:14 file.3
     0:owner@:execute:deny
     1:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     2:group@:read_data/read_xattr/execute/read_attributes/read_acl
         /synchronize:allow
     3:everyone@:read_data/read_xattr/execute/read_attributes/read_acl
         /synchronize:allow

Exemplo 8-4 Restaurando ACLs comuns em arquivos ZFS

Você pode usar o comando chmod para remover todas as ACLs não-comuns em um arquivo ou diretório. (exemplo de)

No exemplo abaixo, existem duas ACEs não-comuns em test5.dir.

# ls -dv test5.dir
drwxr-xr-x   2 root     root           2 Jun 23 15:17 test5.dir
     0:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     1:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     2:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

No exemplo abaixo, as ACLs não-comuns de usuários gozer e lp são removidas. A ACL restante contém os valores padrão para owner@, group@ e everyone@.

# chmod A- test5.dir
# ls -dv test5.dir
drwxr-xr-x   2 root     root           2 Jun 23 15:17 test5.dir
     0:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     1:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     2:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Definindo a herança da ACL em arquivos ZFS no formato verboso

É possível determinar como as ACLs são herdadas ou não nos arquivos e diretórios. Por padrão, as ACLs não são propagadas. Se uma ACL não-comum for definida em um diretório, a ACL não será herdada por nenhum diretório subseqüente. Você deve especificar a herança de uma ACL em um arquivo ou diretório.

A propriedade aclinherit pode ser configurada globalmente em um sistema de arquivos. Por padrão, aclinherit está configurado como restrito.

Para obter mais informações, consulte Herança da ACL.

Exemplo 8-5 Concedendo herança de ACL padrão

Por padrão, as ACLs não se propagam pela estrutura do diretório.

No exemplo abaixo, uma ACE não-comum de read_data/write_data/execute é aplicada no usuário gozer em test.dir.

# chmod A+user:gozer:read_data/write_data/execute:allow test.dir
# ls -dv test.dir
drwxr-xr-x+  2 root     root           2 Jun 23 15:18 test.dir
     0:user:gozer:list_directory/read_data/add_file/write_data/execute:allow
     1:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     2:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     3:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Se for criado um subdiretório test.dir, a ACE não se propaga para o usuário gozer. O usuário gozer teria acesso somente a sub.dir se as permissões em sub.dir lhe permitissem acessar como proprietário de arquivo, membro de grupo ou everyone@.

# mkdir test.dir/sub.dir
# ls -dv test.dir/sub.dir
drwxr-xr-x   2 root     root           2 Jun 23 15:19 test.dir/sub.dir
     0:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     1:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     2:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Exemplo 8-6 Permitindo herança de ACL em arquivos e diretórios

Estas séries de exemplos identificam as ACEs do arquivo e do diretório aplicadas quando o sinalizador file_inherit está definido.

No exemplo a seguir, as permissões read_data/write_data são adicionadas para arquivos do diretório test2.dir do usuário gozer, para que ele tenha acesso de leitura a quaisquer arquivos recém-criados.

# chmod A+user:gozer:read_data/write_data:file_inherit:allow test2.dir
# ls -dv test2.dir
drwxr-xr-x+  2 root     root           2 Jun 23 15:20 test2.dir
     0:user:gozer:read_data/write_data:file_inherit:allow
     1:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     2:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     3:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

No exemplo abaixo, as permissões do usuário gozersão aplicadas no arquivo test2.dir/file.2 recém-criado. A herança de ACL permitida, read_data:file_inherit:allow, indica que o usuário gozer pode ler o conteúdo de todos os arquivos recém-criados.

# touch test2.dir/file.2
# ls -v test2.dir/file.2
-rw-r--r--+  1 root     root           0 Jun 23 15:21 test2.dir/file.2
     0:user:gozer:read_data:allow
     1:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     2:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     3:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

Pelo fato de aclinherit estar definida como modo padrão (groupmask) nesse sistema de arquivos, o usuário gozer não tem a permissão write_data no file.2 porque a permissão de grupo do arquivo não lhe dá acesso.

Observe que a permissão inherit_only, aplicada quando os sinalizadores file_inherit ou dir_inherit estão definidos, é usada para propagar a ACL pela estrutura do diretório. Como tal, o usuário gozer tem permissão concedida ou negada apenas a partir das permissões de everyone@, a não ser que ele seja o proprietário do arquivo ou um membro do grupo ao qual o arquivo pertence. Por exemplo:

# mkdir test2.dir/subdir.2
# ls -dv test2.dir/subdir.2
drwxr-xr-x+  2 root     root           2 Jun 23 15:21 test2.dir/subdir.2
     0:user:gozer:list_directory/read_data/add_file/write_data:file_inherit
         /inherit_only:allow
     1:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     2:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     3:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

As séries de exemplos abaixo identificam as ACLs do arquivo e do diretório aplicadas quando ambos sinalizadores, file_inherit e dir_inherit , estão definidos.

No exemplo abaixo, o usuário gozer tem permissões de leitura, gravação e execução herdadas por arquivos e diretórios recém-criados.

# chmod A+user:gozer:read_data/write_data/execute:file_inherit/dir_inherit:allow test3.dir
# ls -dv test3.dir
drwxr-xr-x+  2 root     root           2 Jun 23 15:22 test3.dir
     0:user:gozer:list_directory/read_data/add_file/write_data/execute
         :file_inherit/dir_inherit:allow
     1:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     2:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     3:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
# touch test3.dir/file.3
# ls -v test3.dir/file.3
-rw-r--r--+  1 root     root           0 Jun 23 15:25 test3.dir/file.3
     0:user:gozer:read_data:allow
     1:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     2:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     3:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow
# mkdir test3.dir/subdir.1
# ls -dv test3.dir/subdir.1
drwxr-xr-x+  2 root     root           2 Jun 23 15:26 test3.dir/subdir.1
     0:user:gozer:list_directory/read_data/execute:file_inherit/dir_inherit
         :allow
     1:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     2:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     3:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Nestes exemplos, pelo fato de os bits de permissão do diretório pai em group@ e everyone@ negarem as permissões de gravação e execução, o usuário gozer não tem permissões de gravação e execução. A propriedade aclmode padrão é restricted, o que indica que as permissões write_data e execute não são herdadas.

No exemplo abaixo, o usuário gozer tem permissões de leitura, gravação e execução herdadas por arquivos recém-criados, mas que não são propagadas para o conteúdo subseqüente do diretório.

# chmod A+user:gozer:read_data/write_data/execute:file_inherit/no_propagate:allow test4.dir
# ls -dv test4.dir
drwxr-xr-x+  2 root     root           2 Jun 23 15:27 test4.dir
     0:user:gozer:list_directory/read_data/add_file/write_data/execute
         :file_inherit/no_propagate:allow
     1:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     2:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     3:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Conforme ilustra o exemplo abaixo, quando um novo subdiretório é criado, a permissão read_data/write_data/execute do usuário gozer não se propaga para o novo diretório sub4.dir.

# mkdir test4.dir/sub4.dir
# ls -dv test4.dir/sub4.dir
drwxr-xr-x   2 root     root           2 Jun 23 15:28 test4.dir/sub4.dir
     0:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     1:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     2:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Conforme ilustra o exemplo abaixo, as permissões de gozer de read_data/write_data/execute são reduzidas com base nas permissões do grupo responsável.

# touch test4.dir/file.4
# ls -v test4.dir/file.4
-rw-r--r--+  1 root     root           0 Jun 23 15:28 test4.dir/file.4
     0:user:gozer:read_data:allow
     1:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     2:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     3:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

Exemplo 8-7 Herança da ACL com o modo de ACL definido como passar

Se a propriedade aclinherit estiver definida como passthrough no sistema de arquivos tank/cindy, o usuário gozer pode herdar a ACL aplicada em test4.dir para o file.4 recém-criado da seguinte forma:

# zfs set aclinherit=passthrough tank/cindy
# touch test4.dir/file.4
# ls -v test4.dir/file.4
-rw-r--r--+  1 root     root           0 Jun 23 15:35 test4.dir/file.4
     0:user:gozer:read_data:allow
     1:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     2:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     3:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

Exemplo 8-8 Herança da ACL com o modo de ACL definido como descartar

Se a propriedade aclinherit estiver definida como discard em um sistema de arquivos, as ACLs podem ser potencialmente descartadas quando os bits de permissão de um diretório se alteram. Por exemplo:

# zfs set aclinherit=discard tank/cindy
# chmod A+user:gozer:read_data/write_data/execute:dir_inherit:allow test5.dir
# ls -dv test5.dir
drwxr-xr-x+  2 root     root           2 Jun 23 15:58 test5.dir
     0:user:gozer:list_directory/read_data/add_file/write_data/execute
         :dir_inherit:allow
     1:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     2:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     3:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Se, mais tarde, você decidir comprimir os bits de permissão em um diretório, a ACL não-comum é descartada. Por exemplo:

# chmod 744 test5.dir
# ls -dv test5.dir
drwxr--r--   2 root     root           2 Jun 23 15:58 test5.dir
     0:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     1:group@:list_directory/read_data/read_xattr/read_attributes/read_acl
         /synchronize:allow
     2:everyone@:list_directory/read_data/read_xattr/read_attributes/read_acl
         /synchronize:allow

Exemplo 8-9 Herança da ACL com o modo de herança da ACL definido como não permitir

No exemplo abaixo, estão definidas duas ACLs não-comuns com herança de arquivo. Uma ACL concede a permissão read_data e outra ACL nega a permissão read_data. Este exemplo ilustra também como você pode especificar duas ACEs no mesmo comando chmod.

# zfs set aclinherit=noallow tank/cindy
# chmod A+user:gozer:read_data:file_inherit:deny,user:lp:read_data:file_inherit:allow test6.dir
# ls -dv test6.dir
drwxr-xr-x+  2 root     root           2 Jun 23 16:00 test6.dir
     0:user:gozer:read_data:file_inherit:deny
     1:user:lp:read_data:file_inherit:allow
     2:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/read_attributes
         /write_attributes/read_acl/write_acl/write_owner/synchronize:allow
     3:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     4:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

Conforme mostra o exemplo abaixo, quando um novo arquivo é criado, a ACL que concede a permissão read_data é descartada.

# touch test6.dir/file.6
# ls -v test6.dir/file.6
-rw-r--r--+  1 root     root           0 Jun 15 12:19 test6.dir/file.6
     0:user:gozer:read_data:inherited:deny
     1:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     2:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     3:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow