Sincronizar, copiar e excluir operações, não apenas arquivos

2

Eu queria saber se existe algum método de sincronização que não copie arquivos se eles já estiverem na pasta de destino.

Deixe-me explicar:

Eu tirei algumas fotos e as coloquei em uma pasta no meu laptop. Para fazer o backup no meu servidor Ubuntu, corri apenas rsync -vrutP source des/ti/na/tion/ . Então decidi colocar todos os RAWs em uma subpasta no meu laptop ( source/RAW ) e os JPGs em outra subpasta ( source/JPG ).

Agora, se eu quiser espelhar isso para o servidor, eu tenho que executar rsync -vrutP --delete source/ des/ti/na/tion/ , mas se eu fizer isso, eu removerei todos os meus arquivos do servidor e depois copiei novamente do meu laptop para o servidor. Eu tenho vários GBs de fotos e isso não é um problema se você tiver tempo para esperar e uma conexão Ethernet ao invés de um WiFi.

Mas não seria MUITO mais rápido, mesmo que fosse muito mais exigente em termos de CPU, se houvesse um comando que comparasse os arquivos na pasta raiz "source" e aplicasse apenas as diferenças de posição entre a origem e o destino? Mais CPU estaria envolvida para listar todos os arquivos, mas eu não precisaria de quase nenhuma largura de banda para transferir arquivos que eu realmente não preciso transferir porque eles já estão no destino, caso estejam em um lugar diferente. É claro que uma funcionalidade imprescindível seria a sincronização delta, que também detectaria se os arquivos existentes (mas movidos) são exatamente os mesmos que os da pasta de origem.

Eu sabia sobre software fazendo isso (Syncovery, Goodsync), mas eu realmente queria saber se há algum comando fazendo isso no Linux e no Windows.

    
por Antonio Galanti 25.06.2018 / 13:12

1 resposta

0

Por um lado, sim ... porque você está em um caso de uso muito específico. Por outro lado, mover ou renomear arquivos no Linux é a mesma coisa. E para descobrir se um arquivo na fonte acaba de ser renomeado, o sistema teria que compará-lo (ou seu hash) a todos os arquivos no backup e, portanto, teria que ler todos os arquivos no backup para calcular seu hash ... isso seria muito demorado, a menos que os hashes sejam mantidos em um banco de dados secundário. Existem sistemas de armazenamento que fazem isso ... mas não seus sistemas de arquivos simples.

    
por 25.06.2018 / 13:53