Permissões estendidas - após definir acl, o grupo não pode gravar

Permissões estendidas - após definir acl, o grupo não pode gravar

Eu quero usarsetfaclpara definir permissões dirpara o grupo de usuários. Eu faço algo assim:

mkdir /Employee
chgrp employeers /Employee
setfacl -m d:g::rwx /Employee

E agora, quando tento criar um arquivo (de usuários que são membros deste grupo), recebo um erro sobre 'Sem permissão'.

root@debian:~# ls -la /Employee
all 8
drwxr-xr-x+  2 root employeers 4096 maj 21 14:50 .
drwxr-xr-x  23 root root       4096 maj 21 14:50 ..

O que estou fazendo de errado?

Responder1

dé uma abreviatura de default. As permissões padrão e reais são independentes. Execute o comando setfacl uma segunda vez sem o d:, então as permissões deverão funcionar conforme desejado. Presumo que você queira o efeito de ambos os comandos.

A saída de getfaclpode sugerir esta conclusão para você, por

  1. mostrando default:expandido
  2. mostrando as entradas de controle de acesso originais que não contêm "padrão", indicando que há algo diferente na entrada que você fez.

Por sua vez, a +saída de ls -l, mostra que existem ACEs, que permitem acessos que não seriam esperados do modo básico (não há como os ACEs POSIX padrão negarem acessos permitidos pelo modo básico que você vê) [1]. Após o segundo comando setfacl, você notará que o modo básico muda para rwxrwxr-x. Isso ocorre porque employeersé o grupo principal do arquivo e setfacl evita a criação de uma entrada duplicada.


[1] As ACLs do Windows e do NFSv4 permitem entradas negadas. Muitos consideram isso uma armadilha de complexidade, incluindo a página de manual do nfs4_acl. Naturalmente, isso significa que a ordem da ACL é significativa. Aparentemente, as GUIs do Windows os alteram para uma ordem "preferencial", com entradas de negação explícitas primeiro e entradas herdadas no final.

informação relacionada