Consegui corrigir esse problema alterando a linha password-file
para o seguinte:
–password-file=/cygdrive/c/cygwin/secret
Eu finalmente tenho um velho computador meu rodando como um servidor de backup com o Ubuntu 11.10. Estou pensando em usá-lo para fazer backup do meu computador com Windows 7 semanalmente usando o rsync. Eu tenho o cygwin instalado e o rsync funciona perfeitamente. No entanto, estou seguindo este guia para criá-lo como uma tarefa agendada:
Eu tenho um script rsync.bat em C: \, e posso fazer com que o script seja executado corretamente se eu o executar diretamente a partir da linha de comando no Cygwin. No entanto, quando tento executar o script rsync.bat, recebo isso:
ERROR: password file must not be other-accessible
Portanto, deve haver problemas de permissões no arquivo secreto ... Eu segui esse guia e defini as permissões para 600, e fiz chown para Nate [o administrador]: SYSTEM.
Alguma idéia sobre o que pode estar causando o problema?
EDIT: O arquivo em questão está na máquina do Windows 7. Imaginei que deveria perguntar aqui, já que estou lidando especificamente com o Cygwin e o Rsync.
Depois de algum googling, descobri que há uma opção de "modos estritos" que diz ao rsync para não verificar as permissões nos arquivos secretos e que foi adicionado para acomodar os sistemas Windows. No entanto, depois de adicioná-lo e reiniciar o daemon rsyn, ainda parece que estou recebendo o mesmo erro. Aqui está o meu arquivo rysncd.conf:
[rsync]
path = /home/nate/backups
comment = My backups
uid = nate
gid = nate
read only = false
auth users = nate
secrets file = /etc/rsyncd.secrets
strict modes = false
E as permissões no arquivo de segredos, de acordo com o cygwin:
-rw------- 1 Nate SYSTEM 11 Dec 9 18:48 secret
Eu sinto que devo estar perdendo algo realmente óbvio.
Certifique-se de fazer o seguinte:
1) Altere o modo do arquivo de senhas para -rw -------, por exemplo, tendo um arquivo de senhas C: / Custom / syncjob / pwfile no Windows, usando o Cygwin, vá para a localização do arquivo de senhas:
cd /cygdrive/c/Custom/syncjob
e depois
chmod 600 ./pwfile
2) Altere também a propriedade do arquivo de senha para o usuário que está executando o trabalho rsync, por exemplo, 'Dave':
chown Dave ./pw
3) Pode ser útil referir-se ao arquivo de senhas como -password-file = / cygdrive / c / ... como Nate escreveu.
Eu não acho que seja necessário alterar a configuração do rsync.
Uma solução conhecida para o Windows é anexar
< pwfile
ao final do comando rsync.
Boa sorte.
Nenhuma das opções acima ajudou. Finalmente, descobri que os finais de linha do pwfile devem ser os seguintes:
$ od -c pwfile 0000000 s e c r e t s \n (Unix) NOT 0000000 s e c r e t s \r \n (Windows)