Como dizer ao rsync para não tocar nas permissões do diretório de destino?

2

Estou usando o rsync para sincronizar um diretório de uma máquina para outra, mas encontrei o seguinte problema: as permissões do diretório de destino foram alteradas.

rsync -ahv defaults/ root@hostname:~/

O problema é que, nesse caso, as permissões e a propriedade do defaults forlder serão atribuídas à pasta de destino.

Eu quero manter as permissões para os arquivos e subdiretórios, mas não para o próprio diretório de origem.

Além disso, não quero remover nenhum arquivo existente do destino (mas atualizá-lo, se necessário), mas acho que as configurações atuais já estão corretas em relação a isso.

Como posso fazer isso?

    
por sorin 08.12.2012 / 17:48

1 resposta

5

Se você quiser excluir o diretório defaults de ter suas permissões alteradas, você teria que literalmente não incluí-lo no comando (já que obviamente você deseja manter as permissões de tudo que você é copiando). Você pode assim fazer isso:

rsync -ahv defaults/* root@hostname:~/

Ou, no caso de você ter arquivos ou diretórios começando com um ponto dentro de defaults e supondo que esteja usando o bash:

shopt -s dotglob
rsync -ahv defaults/* root@hostname:~/
    
por 08.12.2012 / 18:02

Tags