Como copiar todo o disco de um host para outro, com soma de verificação?

1

Ambos os servidores estão executando o Linux. O rsync é uma escolha adequada? Eu sei que é adequado para transferência de arquivos grandes, sincronização de arquivos etc. Mas não tenho certeza sobre a) discos inteiros b) checksums. Agradecemos antecipadamente.

PS: Já leu Como copiar um arquivo enorme para uma pasta compartilhada remota? . Não respondeu a minha pergunta.

    
por th3an0maly 09.03.2016 / 20:44

1 resposta

2

A única maneira de você poder fazer o checksum em uma unidade inteira é desmontar o sistema de arquivos desejado e, em seguida, fazer o checksum:

(assumindo que /dev/sdb esteja montado em /mnt/foo )

$ umount /mnt/foo
$ md5sum /dev/sdb
...

Uma vez que você tenha a soma de verificação, você pode usar dd canalizado através do ssh para transferir o dispositivo de bloco inteiro para outro sistema:

$ dd if=/dev/sdb | ssh user@host "dd of=/path/to/destination/device"

Se você é capaz de usar o ZFS, no entanto, tudo isso fica muito mais fácil, já que você pode capturar um sistema de arquivos inteiro e enviá-lo de maneira eficiente para um servidor remoto. Com o ZFS, praticamente tudo é verificado e você pode ter certeza de que a cópia remota corresponderá à cópia local bit-a-bit.

    
por 09.03.2016 / 21:34