Definir automaticamente o grupo e permissões em arquivos em uma pasta? [duplicado]

2

Quando eu crio novos arquivos e pastas em uma pasta específica, eu gostaria que eles herdassem o grupo e as permissões da pasta pai. Isso é possível?

Por exemplo

mkdir -p example.com/public
cd example.com
sudo chgrp apache public
chmod 775 public

Agora, quando eu criar uma nova pasta

cd public
mkdir test
ls -al
drwxrwxr-x 3 foo bar 4096 Nov 3 16:19 public

O diretório test pertence a foo e meu grupo padrão bar . Eu gostaria que a nova pasta pertencesse ao grupo apache .

Eu gostaria do mesmo comportamento para arquivos.

Alguma idéia?

    
por user633183 03.11.2014 / 22:18

2 respostas

4

O grupo pode ser herdado configurando o bit SGID:

chmod g+s /path/to/directory

Para herdar permissões, você precisa da ACL: man 5 acl

Você precisa definir uma ACL padrão para o diretório: setfacl -d -m g::...

    
por 03.11.2014 / 22:23
1

Herdar a propriedade do grupo é fácil. Basta definir o bit SETGID :

chmod g+s example.com/public

Qualquer coisa criada no diretório agora deve ter apache como o proprietário do grupo e os diretórios herdarão o bit SETGID.

Não acredito que seja possível herdar permissões. Você terá que definir o umask para o seu servidor web para definir as permissões de novos arquivos / diretórios.

    
por 03.11.2014 / 22:22