rsync backup atrapalha as permissões nos arquivos

2

Eu uso o backup rsync no meu dispositivo Android para fazer backup de alguns arquivos do meu dispositivo para o meu servidor * nix. Isso funciona, exceto o diretório de destino e todos os arquivos sob ele têm seus sinalizadores de modo de arquivo definidos como 075, tornando-os inacessíveis para o proprietário (me).
Eu acho que a falha é com backup rsync, mas eu não encontrei uma maneira de remediar isso.
Existe uma maneira de ter um trabalho acionado, quando os arquivos são transferidos via ssh?

Minha solução atual é ter uma tarefa cron configurando os flags de arquivo para 755 em um intervalo regular.

Estou usando o seguinte comando rsync:

rsync -rptgo --progress --delete-after -e "ssh -y -p 22  -i '/sdcard/dss_key'" /sdcard/myfolder user@server:~/
    
por TheRoadrunner 13.10.2013 / 12:40

1 resposta

1

Provavelmente, as permissões no seu dispositivo móvel (origem) estão definidas como 075 . Se invocado com o parâmetro -p rsync , preserva as permissões.

When this option is off, permissions are set as follows:

o Existing files (including updated files) retain their existing permissions, though the --executability option might change just the execute permission for the file.

o New files get their "normal" permission bits set to the source file’s permissions masked with the receiving direc‐ tory’s default permissions (either the receiving process’s umask, or the permissions specified via the destination directory’s default ACL), and their special permission bits disabled except in the case where a new directory inherits a setgid bit from its parent directory.

from rsync's manpage

Então, você provavelmente tem que usar

rsync -rtg --progress --delete-after -e "ssh -y -p 22 -i '/sdcard/dss_key'" /sdcard/myfolder user@server:~/

Também omiti o sinalizador -o (preserve owner), que só é efetivo, se você fizer login no destino como root , o que você não faz, de acordo com o comando fornecido.

    
por 21.10.2013 / 21:14