Eu gostaria deMão Únicasincronizar grandes diretórios entre duas máquinas sem conexão direta. Usando algum armazenamento em nuvem (sem poder de computação) conectado a ambas as máquinas ou um dispositivo de armazenamento intermediário (como disco rígido, unidade flash, não outra máquina) que pode ser conectado às máquinas alternadamente.
O que é importante notar é que não há espaço suficiente no armazenamento intermediário para toda a pasta, mas suficiente para a transferência do arquivo maior.
Imagino que o fluxo seja:
- Na máquina de destino: crie um instantâneo da pasta de destino e coloque-o no armazenamento compartilhado.
- Na máquina de origem: compare a estrutura da pasta de origem com o instantâneo do armazenamento compartilhado e coloque todos os arquivos ausentes com metainformações no armazenamento compartilhado (limitado pelo espaço disponível no armazenamento compartilhado).
- Na máquina de destino: Copie arquivos do armazenamento compartilhado e informe se o fluxo deve ser repetido.
Já existe uma solução para fazer algo assim no shell do macOS/Linux?
Responder1
Apenas useSincronizar novamenteno dispositivo intermediário.
O Rsync é perfeitamente adequado para uma tarefa como esta: transformar a origem na máquina de origem e o destino na máquina de destino e pronto.
O comando seria algo assim:
rsync -avz user@source_machine.local:/source/directory/ user@destination_machine.local:/destination/directory/
Isso deve funcionar sem qualquer preocupação com a sobrecarga de armazenamento na máquina intermediária, pois, ao usar o Rsync, tudo se torna uma tarefa de rede que utiliza apenas CPU e recursos de rede nessa máquina intermediária.
Mas ambas as opções exigem que as máquinas de origem e de destino tenham algum tipo de sistema operacional em execução. Um único pedaço de armazenamento “burro” baseado em nuvem ou um simples dispositivo de armazenamento externo, como uma unidade flash USB, não pode ser “conectado” sem algum sistema operacional entre eles.
Em última análise, você precisa de um sistema operacional em ambos os lados da equação. E talvez um dispositivo intermediário possa montar o dispositivo em nuvem e, em seguida, montar o dispositivo de armazenamento externo como uma unidade flash USB e então você pode simplesmente executar o Rsync e pronto.