A saída getfacl
do diretório explica isso.
A quarta linha:
# flags: -s-
indica que o diretório tem o setgid
bit definido, então todos os arquivos gerados nele terão o mesmo grupo que este diretório. Novos subdiretórios herdarão o grupo e o setgid
bit. Isso não está relacionado às ACLs; isso é apenas um chmod 2755
básico.
No final da listagem, há várias linhas marcadas com a palavra-chave default
:
default:user::rwx
default:group::r-x
default:group:postgres:r-x
default:mask::r-x
default:other::---
Eles especificam com mais detalhes as permissões que os novos arquivos ou subdiretórios receberão. Nesse caso, ele impõe as permissões do grupo r-x ao proprietário do grupo POSIX padrão e adiciona permissões r-x explícitas para o grupo postgres
, independentemente de o criador pertencer ou não a esse grupo. Se você precisar que os arquivos tenham acesso de gravação de grupo, eles precisam ser alterados.
Tente isto:
setfacl -m g::rwX,d:g::rwX,d:g:postgres:rwX /var/www/pgcluu/stats
Com o Linux setfacl
, a parte mask
da ACL deve ser atualizada automaticamente para incluir o acesso de gravação. (Com um sistema POSIX mais estrito, você teria que adicionar d:m:rwx
à especificação da ACL para ajustar explicitamente a máscara ACL.)
O X maiúsculo indica "permissão de execução, mas apenas para diretórios, e também para arquivos que já possuem permissão de execução para alguém".
Se o diretório (e quaisquer novos arquivos criados nele) tiver as permissões desejadas após essa modificação, considere adicionar a opção -R
para fazer a alteração recursivamente para todos os arquivos e diretórios em /var/www/pgcluu/stats
.