Eu estou tentando transferir um enorme arquivo de log crescente de uma forma que sobreviverá às partições de rede entre o cliente e o servidor. Se a conexão de rede for perdida, não posso dar ao luxo de retransmitir todo o arquivo por causa das limitações brutas de utilização da rede. Só sincronizarei uma versão compactada em andamento da seguinte forma
tail -f logfile | xz -3 -c > syncThis.xz
Encontrei várias opções para realizar a transferência continuamente.
O que eu posso entender melhor é rsync --append
. Se a conexão for interrompida, o rsync falhará, então eu posso executar novamente o comando para retomar a transferência.
Outra opção parece ser sshfs ou nfs, com ou sem autofs. Com um desses, o comando acima mudaria para
tail -f logfile | xz -3 -c > /mountLoc/syncThis.xz
e não haveria necessidade de rsync
.
A questão é esta: : Com um sistema de arquivos em rede, se eu continuar anexando a um arquivo sincronizado e a rede cortar e depois continuar, somente e todos os anexos restantes do arquivo serão automaticamente transferido, semelhante ao que rsync --append
faria?
Se este não for o padrão, existe uma configuração para ativar tal coisa?
Suponho que tal sistema de arquivos teria que acompanhar o fato de que apenas anexos ocorreram no arquivo nesse ínterim.