rsync - resume a transferência interrompida (ideia do rsync)

1

Eu tenho estações remotas que coletam dados de sensores (ARM Debian) e transfere conjuntos de dados (cerca de 1,1 MB) a cada 15 minutos (o servidor está cheio do Debian). Em uma estação, a recepção GSM é ruim e as transferências scp padrão são geralmente interrompidas e precisam ser iniciadas desde o início.

Agora estou tentando o rsync. Na estação invoquei:

rsync --partial --remove-source-files --progress --rsh=ssh -z FILE root@SERVER:/DIR/

Após vários minutos, o arquivo apareceu no servidor. (é possível ver o status da transferência atual no servidor de recebimento - o arquivo apareceu quando a transferência foi concluída?)

Como retomar a transferência quando ela está quebrada? Se o arquivo não for excluído, a transferência não foi concluída?

    
por Marcin Polkowski 31.07.2013 / 23:01

1 resposta

1

O Rsync sai com um código de saída diferente de zero se a transferência não for concluída. Se você estiver usando bash ou um shell semelhante, uma solução simples seria executá-lo assim:

until rsync --partial --etc
do
    sleep 1
    echo trying again
done

Isso continuará executando rsync indefinidamente até que seja bem-sucedido. Os comandos dentro do bloco do...done são apenas um exemplo. Você poderia colocar outra coisa lá.

    
por 05.08.2013 / 22:06