O que eu costumo fazer para garantir que eu não perca meus dados é escolher quais arquivos eu quero manter, e uma vez que eu tenho meu disco rígido externo grande (em bytes, não em heft) (geralmente 2TB, e geralmente USB3 atualmente), eu uso o método usual de arrastar e soltar para mover os arquivos para a unidade de backup.
Então, mais tarde, eu posso ir tão longe a ponto de copiar o conteúdo novamente para um terceiro disco rígido.
É tudo muito ad-hoc.
Eu sei sobre todas as maneiras de fazer isso "melhor", mas eu me importo um pouco mais sobre o que é prático. Por exemplo, com um único disco rígido externo, isso significa que tenho uma única unidade USB3 externa de 2,5 "que coloco na mala juntamente com o meu MacBook Pro para que eu tenha um total de 2 TB externo + 256 GB de armazenamento local.
Qualquer coisa com mais redundância irá necessariamente adicionar mais volume à configuração. 2.5 "sempre foi o ponto ideal em velocidade de transferência e capacidade vs. volume físico vs flash USB. Para uma redundância adequada, agora preciso arrastar em torno de dois discos externos. Só sei que não terminarei fazendo isso corretamente, conectando os dois.
Outras maneiras de fazer isso "melhor" são vários programas que invariavelmente custam somas exorbitantes de dinheiro real que forçam um certo fluxo de trabalho em você ou o ajudam a fazer backup de unidades inteiras. Eu geralmente acho que não quero nada disso. No entanto, ainda estou aberto a sugestões, em especial algo que ajuda a verificar arquivos após a transferência / backup por hashing.
Voltar para a pergunta em questão. No Windows (7, 8, 8.1) ou OS X (10.8, 10.9) quando digo ao Explorer (ou ao Finder) para mover um diretório enorme do disco local para o disco montado externo, o sistema operacional hash os arquivos após a cópia, antes de apagar o conteúdo original?
Antecipando algumas respostas, sim, eu sei sobre o rsync. Sim, eu uso o Time Machine com este disco rígido externo que acabei de mencionar (é uma partição de 500GB no disco de 2TB). Eu sei que o Time Machine usa o rsync sob o capô. O problema é que o Time Machine vai começar a perder suas coisas, e você tem que alocar uma quantidade enormemente maior de espaço para razoavelmente esperar que tudo seja recuperável. Se você tiver um arquivo de 4 GB e editar 2 bytes, o Time Machine consumirá mais 4 GB (e terá a quantidade necessária de tempo copiando tudo) no próximo backup. Estas são apenas algumas das qualidades que eu conheço que fazem com que a Time Machine fique longe de ser perfeita. Estou muito feliz em deixá-lo brincar com uma partição de 500GB, no entanto.
O fluxo de arquivos importantes (ignorando todo o código-fonte que já está nos servidores Git) é o seguinte: primeiro, ele está apenas no disco local e, a cada poucos dias, entra na partição do Time Machine. Eventualmente, ele pode desaparecer da partição do Time Machine à medida que é preenchido e a granularidade das imagens passadas diminui. A cada poucas semanas eu escolho manualmente arquivos que ocupam muito espaço local, mas que eu não me vejo usando, e eu o movo para uma partição na unidade externa. Agora existe como uma cópia e só vive na unidade externa. Se eu realmente precisar desses dados, também armazenarei os dados em mais um local.
Se, de fato, o fato de dizer ao sistema operacional para mover um arquivo não fazer com que ele verifique o conteúdo no momento da entrega, terei que alterar completamente meu protocolo. Isso porque, se a mídia de destino estiver com defeito, os dados ficarão corrompidos.
Durante a elaboração desta pergunta, estou começando a pensar que fiz a pergunta errada. Talvez seja muito mais inteligente simplesmente usar sempre dois destinos de backup e alterar o protocolo de 1 movimento, 1 cópia para 2 cópias e uma exclusão. Isso produz uma garantia comprovadamente maior de retenção total de dados.
No entanto, executar o hash antes de excluir / mover também é muito importante, porque é a única maneira de saber que a mídia de destino não está com defeito!
Talvez o que eu queira seja uma GUI rsync ou, melhor ainda, extensões / plug-ins que me permitam executar uma ação como "Copiar e Hash" e "Mover e Hash" enquanto faço minhas cópias / movimentações comuns com meus diretórios. Explorer / Finder.
Também há algumas variações: com dois discos externos conectados, gostaria de emitir uma "Copiar para dois destinos e Hash". Isso evitará que os dados de origem sejam desnecessariamente divididos duas vezes, o que aconteceria com duas cópias consecutivas.