Programa de cópia de arquivos que gera somas de verificação dos dados durante a cópia também

5

Minha pergunta é a seguinte: existe uma ferramenta que copia um arquivo do diretório A para B enquanto, simultaneamente, gera a soma de verificação do arquivo que copiou / leu, sem fazer uma leitura / passagem extra apenas para gerar o dito checksum? ?

Vou copiar alguns TBs de arquivos de um disco rígido para outro e em vez de:

  1. Copiar arquivos do HDD1 - > HDD2 (X horas)
  2. Gerar somas de verificação de arquivos no HDD1 (Y horas)
  3. Verifique as somas de verificação dos arquivos no HDD2 (~ Y horas)

Eu estava pensando em um processo mais simplificado:

i. Copy files from HDD1 -> HDD2 and generate checksums of the files copied as well (Z hours)

ii. Verify checksums of files on HDD2 (~Y hours)

Minha suposição é que Z ~ = X porque o programa que pode assim ter lido o arquivo completo (como está copiando de um disco rígido para outro) e, portanto, não precisa ler o arquivo arquivo novamente apenas para gerar sua soma de verificação.

Agora eu sei que essa idéia minha pode não funcionar, por exemplo, se o sistema operacional usa DMA para copiar o arquivo e não tenho certeza sobre qual técnica o Windows 7 usa para copiar arquivos de um HDD para outro.

Qualquer sugestão para este efeito será apreciada - especialmente agilizando o processo de cópia e garantindo que a transferência seja 1: 1 sem corrupção ou falta de arquivos .

    
por PoorLuzer 26.12.2012 / 15:19

1 resposta

2

Sua suposição não é totalmente correta, já que arquivos maiores definitivamente não são armazenados na memória e para aumentar a velocidade de cópia, os arquivos são copiados em pedaços de tamanho específicos (no Linux, você brinca com o tamanho daquele pedaço para aumentar a velocidade das operações com arquivos). E sim, os arquivos são armazenados em cache na memória. Quanto ao DMA - o objetivo desta tecnologia é evitar a CPU ao copiar arquivos e colocá-los na RAM imediatamente, para que não vá diretamente do HDD para o HDD. DMA significa acesso direto à memória.
Eu sugeriria usar uma solução Linux LiveCD específica (como rsync ou scripts muito simples), mas eu entendo que isso provavelmente custaria mais tempo do que economizar, então é melhor se você ficar com o Windows. Experimente estes: link
link
link
link

EDITAR
Há uma edição mais recente e mais poderosa do ROBOCOP da Microsoft: link

EDIT 2
Se durante a replicação você descobrir que algo foi corrompido, duvido que seja seguro usar o HDD2 para armazenamento de dados a longo prazo (já que apenas mais setores serão corrompidos).

    
por 26.12.2012 / 15:30