Conceda permissão de gravação padrão para agrupar todos os arquivos e pastas criados recentemente


15

Digamos que temos 2 usuários: aeb, que fazem parte do grupo geral.

Gostaria que qualquer arquivo ou pasta criado por A tivesse permissão de gravação para o grupo GERAL.

Como eu posso fazer isso?

Por exemplo, o arquivo recém-criado é definido como:

-rw-r--r-- 1 a general

Isso não dá permissão de gravação para o grupo geral


Você pode estar interessado nesta resposta: stackoverflow.com/questions/3175303/…
Gavriel 15/13

2
Eu não quero fazer isso de Java. Este não é o caminho certo para fazê-lo
Dejel

"Não quero fazê-lo em Java. Este não é o caminho certo para fazê-lo." Isso é quase uma afirmação filosófica. Aplica-se em todos os lugares ...
GargantuChet

Respostas:


15

Sim, você pode fazer isso alterando o umask. Os umaskdetermina quais são as permissões padrão para um arquivo recém-creted.

Você pode adicionar umask g+wno final do seu arquivo de configuração do shell ( ~/.bashrcpor exemplo).

Mas, na verdade, não é uma prática recomendável. Caso você queira garantir a integridade de um arquivo e se esqueça de atualizar as permissões, ele poderá ser modificado pelo grupo. É contra o princípio de segurança "valores iniciais seguros".

O que você poderia fazer é tornar todo o arquivo recém-criado de um diretório específico gravável pelo grupo. Você pode fazer isso manipulando as ACLs do diretório. Por exemplo setfacl -dm u::rw,g::rw,o::r ~/shared,.

Veja essas postagens para referência: /server/349145/can-i-override-my-umask-using-acls-to-make-all-files-created-in-a-given-director e /programming/580584/setting-default-permissions-for-newly-created-files-and-sub-directories-under-a .


E se eu não souber qual será o diretório? Desde que digamos que eu tenho a pasta TEST. Todos os arquivos que A cria estarão em TEST. No entanto, ele pode criar uma pasta 20130515 e embaixo dela para localizar o arquivo recém-criado. por isso deve ser para qualquer arquivo e pasta que é criada de forma recursiva na pasta TEST
Dejel

2
as ACLs padrão herdam os novos subdiretórios e se aplicam aos arquivos criados nesses diretórios. Portanto, se você /srv/TESTdefiniu as ACLs padrão nesse diretório, quando /srv/TEST/20130515elas terão as mesmas ACLs padrão que o diretório pai.
Bratchley

Também pode ser uma boa ideia executar, sudo chmod g+s [dir]para que os arquivos sejam de propriedade do grupo
linuxgnuru
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.