Tentando atualizar arquivos em um servidor, com o rsync
comando:
rsync -ravq -e "ssh -o ConnectTimeout=2 -o ServerAliveInterval=2 -ServerAliveCountMax=2" --delete ./local_dir user@$SERVER:/dest_dir
corrupt packet
erros continuam sendo gerados, especificamente:
rsync: writefd_unbuffered failed to write 4092 bytes to socket [sender]: Broken pipe (32)
rsync: connection unexpectedly closed (11337 bytes received so far) [sender]
rsync error: unexplained error (code 255) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [sender=3.0.9]
Provavelmente, isso está relacionado a um ssh
tempo limite, como parece acontecer com arquivos grandes (r). Além disso, continuo recebendo tempos limite usando o WinSCP. Isso está acontecendo apenas comigo; várias das pessoas com quem trabalho que usam este servidor não têm o mesmo problema.
Usando rsync
de um terminal Cygwin no Windows 7, em um servidor Centos 6.3.
Não sei ao certo que outras informações podem ser úteis ou como obtê-las. Vou atualizar a pergunta ou adicionar comentários conforme as sugestões.
Como devo resolver isso?
Muito obrigado!
fonte
A corrupção sugere um NIC ou driver de NIC ruim na sua máquina; tive isso uma vez na caixa do Windows da minha esposa: tive que tentar repetidamente instalar o rsync. Quando isso acontecesse, eu poderia invocar o rsync repetidamente para transferir e corrigir o outro software necessário, o que incluía principalmente drivers de NIC atualizados e uma ferramenta de soma de verificação.
fonte
Se o valor ulimit for 0 ou um pequeno número, ele deve estar dando esse erro. Tente aumentar o valor ulimit
(such as 9999999999)
e tente novamente. você pode escrever um pequeno script de shell(a.sh)
e usar algo como isto:fonte
basta fazer um loop até transferir finalmente
fonte