Quero simplesmente fazer backup e arquivar os arquivos em várias máquinas. Infelizmente, os arquivos têm alguns arquivos grandes que são o mesmo arquivo, mas armazenados de maneira diferente em máquinas diferentes. Por exemplo, pode haver algumas centenas de fotos que foram copiadas de um computador para outro como um backup ad-hoc. Agora que quero criar um repositório comum de arquivos, não quero várias cópias da mesma foto.
Se eu copiar todos esses arquivos em um único diretório, existe uma ferramenta capaz de reconhecer e duplicar arquivos duplicados e fornecer uma lista ou até excluir uma das duplicatas?
backup
file-management
deduplication
Usuário1
fonte
fonte
Respostas:
Crie um md5sum de cada arquivo, os duplicados sugerem (mas não garantem) arquivos duplicados.
fonte
Você pode usar o dupemerge para transformar os arquivos idênticos em hardlinks. No entanto, levará muito tempo em um conjunto de arquivos grandes. Os hashes SHA (ou MD5) dos arquivos quase certamente funcionarão mais rapidamente, mas você terá que fazer mais trabalho para encontrar as duplicatas. A probabilidade de colisão acidental é tão baixa que, na realidade, você pode ignorá-la. (De fato, muitos produtos de desduplicação já fazem isso.)
Sua melhor aposta para lidar com fotos e música é obter ferramentas personalizadas para encontrar duplicatas desses itens em particular. Especialmente porque você pode não ter arquivos idênticos em nível binário depois que coisas como marcação, corte ou diferenças de codificação entram em jogo. Você precisará de ferramentas que possam encontrar fotos que "pareçam iguais" e músicas que "soem" iguais, mesmo se pequenos ajustes foram feitos nos arquivos.
fonte
hardlink
é muito rápido (levou 200 segundos para 1,2 milhões de arquivos, 320GB)Bem, se você tiver a capacidade, poderá configurar um sistema de arquivos com redução de duplicação e colocar seus backups nisso. Isso não apenas desduplicará arquivos inteiros, mas também arquivos semelhantes. Por exemplo, se você tiver o mesmo JPEG em vários locais, mas com diferentes tags EXIF em cada versão, um sistema de arquivos com deduplicação armazenará os dados da imagem apenas uma vez.
Os sistemas de arquivos com redução de redundância incluem lessfs, ZFS e SDFS.
fonte
rsync --link-dest
é seu amigo se você quiser economizar na leitura / transferência também. Uma introdução simples é aqui: netfuture.ch/2013/08/…Quando eu estava fazendo esse tipo de coisa, aprendi que é muito mais envolvente / eficiente em termos de tempo apenas analisar os arquivos você mesmo no seu tempo livre, ao longo de algumas semanas. Você pode dizer a diferença entre as coisas muito melhor do que o seu computador.
Se você não concorda, sugiro o EasyDuplicateFinder . Como mencionei acima, porém, levará muito tempo, digamos, cerca de um dia para 5 GB de arquivos.
E, por outro lado, o Crashplan faz o que você estava fazendo antes, mas de uma maneira muito mais organizada e sem problemas de versão.
fonte
Outra possibilidade, presumindo que as máquinas das quais você está fazendo backup suportá-las, é usar algo como isso
rsync
.Se você
rsync
de A a B, de C a B, de D a B, etc., duplicatas exatas (por nome de arquivo) serão eliminadas (e sincronizadas entre as máquinas que você está fazendo backup).Se você não deseja que todos estejam sincronizados, este não é o melhor caminho a percorrer.
fonte
Para arquivos de imagem, use findimagedupes . Também é empacotado no debian .
fonte
Os links físicos só executam desduplicação se o arquivo inteiro for idêntico. Se os cabeçalhos (EXIF, ID3,…) ou os metadados (proprietário) diferirem, eles não serão vinculados.
Quando você tiver a chance de usar um sistema de arquivos com suporte à desduplicação de bloco (ZFS, btrfs,…), use-o. Gosto muito do suporte à desduplicação offline (também conhecido como lote ) do btrfs, que oferece suporte à desduplicação no nível da extensão e não consome constantemente grandes quantidades de memória (como a desduplicação online do ZFS).
A desduplicação também tem a vantagem de que os arquivos podem ser modificados pelo usuário sem que a outra cópia seja notada (o que pode não ser aplicável no seu caso, mas em outros).
Veja https://btrfs.wiki.kernel.org/index.php/Deduplication para uma excelente discussão.
fonte