Como alterar o proprietário com segurança: agrupe recursivamente?

2

Eu estou copiando o diretório home de um usuário para ser o diretório home do usuário # 2 e, portanto, preciso chiar o conteúdo para o novo usuário. Executando:

find /home/user2 -user user1 -exec chown user2 '{}' \;
find /home/user2 -group user1 -exec chgrp user2 '{}' \;

funciona bem, mas (devido aos arquivos ./ .., suponho), de alguma forma a raiz / foi chown'ed para user2. No entanto, /home permaneceu em propriedade de root: root.

Como posso ter certeza do que o resultado vai fazer? Como posso restringi-lo de subir a árvore (em direção ao root), até mesmo pará-lo antes que ele modifique o próprio diretório de trabalho?

    
por superboot 14.08.2013 / 19:53

1 resposta

2

Quando eu faço find /home/$user ele não sobe na árvore .. Você pode deixar os argumentos acionáveis fora do comando find para ver o que será substituído nas chaves.

Se a home for seu próprio sistema de arquivos, e provavelmente deve ser, você pode usar -xdev para não percorrer outros sistemas de arquivos. Além disso, -H diz a find para não seguir os links simbólicos.

Dito isso, por que não chown -R user2:user2 /home/user2 ?

    
por 14.08.2013 / 20:05