O membro do grupo editando para o arquivo * automaticamente * altera a propriedade, o grupo e as permissões

1

Eu tenho um diretório que estou tentando configurar para que os membros de um grupo tenham privilégios rwx. Aqui está um subconjunto do diretório e suas permissões:

-rwxr-xr-x  1 myusrnm grpnm 21638 2015-04-22 14:14 correct
-rwxrwxr--  1 myusrnm grpnm 14403 2015-04-22 14:14 correct.c

Agora, mudo para um dos usuários do grupo, confirmo que ele está nele:

myusrnm@server:~/grpdir$ sudo su hisusrnm
hisusrnm@server:/grpdir$ whoami
hisusrnm
hisusrnm@server:/grpdir$ groups
hisusrnm sshusers grpnm

e edite corretamente. Agora, no outro terminal, eu checo o diretório e descubro:

-rwxr-xr-x  1 myusrnm grpnm   21638 2015-04-22 14:14 correct
-rwxrwxr--  1 hisusrnm hisusrnm 14368 2015-04-22 14:23 correct.c

Acabei de perceber que a mesma coisa acontece quando eu edito um arquivo; seu grupo muda automaticamente para myusrnm e suas permissões mudam automaticamente para 774. Por que isso está acontecendo? Como posso fazer com que os membros do grupo editem um arquivo sem alterar seu grupo, sua propriedade e suas permissões? Este comportamento padrão do Linux? Ou o meu sistema está se comportando de maneira extraordinária?

    
por Frank Harris 22.04.2015 / 20:27

1 resposta

1

use SetGID na pasta pai. Isso fará com que o proprietário do grupo permaneça como o das pastas pai.

você pode ativar SetGID com chmod g+s folder/path ou coloque um 2 na posição mais alta do padrão numérico; Por exemplo: chmod 2740 folder/path . se for uma nova pasta, você pode simplesmente aplicar a propriedade à pasta e os novos arquivos assumirão as pastas group-owner ou, em uma pasta existente, indicar a pasta em si, mas use a opção chmod -R para definir a permissão em todas as crianças existentes. se as crianças tiverem proprietários existentes, você precisará defini-las também

chown -R user:group /path/to/existing/dir
chmod -R 2640 /path/to/existing/dir

Quanto a por que suas permissões estão mudando, verifique seu umask . parece que está definido para 0003 . você personalizou isso? considere alterá-lo para 0022 .

    
por 22.04.2015 / 21:10