Altera a propriedade do grupo de pastas com chmod g + s

5

Eu tenho uma hierarquia de pastas que desejo alterar a propriedade do grupo incluindo quaisquer adições subseqüentes de arquivos / pastas . Eu ia usar chmod g + s, mas não tenho certeza se isso se aplica a pastas já criadas e como eu corro isso com o nome do grupo.

    
por mike628 31.08.2011 / 21:48

4 respostas

7

O (muito ligeiramente) expande as respostas existentes, você provavelmente desejará definir recursivamente a propriedade em quaisquer arquivos e diretórios existentes e o bit setgid em quaisquer diretórios existentes. Isto é, se sua hierarquia já tiver arquivos e diretórios existentes. Se isso não acontecer, você não precisa se preocupar com a parte recursiva.

Algo parecido com isto:

find /path/to/hierarchy -type d | xargs chmod g+s
chgrp -R groupname /path/to/hierarchy

e você está pronto. Agora, se você quiser garantir que determinadas permissões de rwx em arquivos / diretórios sejam copiadas ou movidas para a hierarquia, isso é um pouco mais complicado. Você provavelmente precisará usar ACLs padrão, mas a implementação do Linux ACL (com base em uma proposta POSIX inoperante, acredito) nem sempre funciona como se poderia esperar.

    
por 01.09.2011 / 00:05
5

Usando a resposta / comando do rthomson:

find /path/to/hierarchy -type d | xargs chmod g+s

Isso me deu problemas quando há espaços em qualquer um dos subdiretórios: Em vez disso, acho que é muito mais fácil usar as opções find -exec , por exemplo:

find /path/to/hierarchy -type d -exec chmod g+s {} \;

    
por 04.12.2014 / 10:49
2

você pode usar

chgrp -R folder

Isso mudará o proprietário do grupo de forma negativa na pasta e nas subpastas e seus respectivos arquivos

    
por 31.08.2011 / 21:51
2

g + s adiciona o bit "setgid" que basicamente afeta apenas o comportamento padrão de criar novos arquivos. (em suma ... qualquer novo arquivo / diretório criado terá o grupo configurado para o grupo da pasta pai)

você poderia simplesmente

chgrp group-name some_directory/* -R

para alterar o grupo dos arquivos em "some_directory" para "group-name" recursivamente (-R)

    
por 31.08.2011 / 21:51