Estou tendo um problema com as permissões em um servidor Linux. Estou acostumado a BSD. Quando um diretório pertence a um grupo no qual o usuário não pertence, como www-data, os arquivos criados nele pertencem a esse grupo. Isso é importante porque quero que os arquivos sejam legíveis pelo servidor da web (que não executarei como raiz), mas assim um usuário ainda poderá colocar novos arquivos no diretório. Não consigo colocar os usuários no www-data porque eles podem ler todos os sites de outros usuários.
Quero que o servidor da Web leia todos os sites, quero que os usuários possam mudar seus próprios.
As permissões são definidas assim nas pastas no momento ....
drwxr-x--- 3 john www-data 4096 Feb 17 21:27 john
É um comportamento padrão no BSD que as permissões funcionem dessa maneira. Como faço para obter o Linux para fazer isso?
fonte
Respostas:
Parece que você está descrevendo a funcionalidade do bit setgid em que, quando um diretório que o definiu, forçará qualquer novo arquivo criado a ter seu grupo definido no mesmo grupo definido no diretório pai.
Exemplo
configurar um diretório com permissões + propriedades
toque em um arquivo como saml neste diretório
Isso fornecerá aproximadamente o que parece que você deseja. Se você realmente deseja exatamente o que descreveu, acho que precisará recorrer à funcionalidade Listas de controle de acesso para obter isso (ACLs).
ACLs
Se você deseja obter um pouco mais de controle sobre as permissões nos arquivos criados no diretório,
somedir
adicione a regra de ACL a seguir para definir as permissões padrão dessa maneira.antes
definir permissões
Observe o
+
no final, isso significa que este diretório tem ACLs aplicadas a ele.depois de
Observe com as permissões padrão (
setfacl -Rdm
) definidas para que as permissões sejam (r-x
) por padrão (g:apache:rx
). Isso força qualquer novo arquivo a ter apenas or
bit ativado.fonte
unzip
?unzip
. Especificamente o-X
interruptor.TL: DR; para fazer com que novos arquivos herdam o grupo da pasta do contêiner:
Nota: está implícito na resposta aceita, este é apenas um trecho.
fonte
Como complemento à resposta do slm, observe que, em um sistema de arquivos ext2 / 3/4, é possível replicar o comportamento do BSD que você descreve usando a
bsdgroups
opção mount na partição. Namount(1)
página do manual:fonte