Não sei por que isso é necessário, mas funciona para mim. Eu classificaria isso como uma solução alternativa.
Adicionando
--chmod=a=rw,Da+x
para a lista de parâmetros de clientes remove o sinalizador somente leitura no lado do servidor.
Estou usando o cwrsync no windows. Este é o meu arquivo de configuração do daemon
use chroot = false
strict modes = false
hosts allow = *
log file = rsyncd.log
pid file = rsyncd.pid
port = 11011
# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygdrive/c/work
#
[read]
path = /cygdrive/o/MBackupData/out/
read only = true
transfer logging = yes
list = true
timeout = 30
[write]
path = /cygdrive/o/MBackupData/in/
read only = false
write only = false
transfer logging = yes
list = true
timeout = 30
refuse options = delete
Todos os módulos apontam para uma partição ntfs. Estou usando este comando para gravar arquivos nele:
bin\rsync -v --append --perms --remove-source-files --partial --modify-window=1 -z --compress-level=9 --progress --times --stats --links --port=11011 /cygdrive/o/MBackupData/out/*.* 192.168.1.5::write/
Funciona, mas por algum motivo, todos os arquivos têm o sinalizador somente leitura definido. Os arquivos de origem não têm esse sinalizador. Como posso configurá-lo para não definir esse sinalizador?
Certifique-se de configurar cwRsync para não processar permissões no lado do cliente, e remova - perms da sua linha de comando. Não tem significado para operações baseadas em janelas.
Se você deseja transferir permissão ou algo semelhante, você pode considerar dar um passo adicional descrito aqui .