paulo1205
(usa Ubuntu)
Enviado em 03/06/2016 - 16:21h
O comando
dd possívelmente
não é a melhor opção para fazer o que você quer.
Áreas do disco que não estão em uso podem conter qualquer coisa, não simplesmente zeros, pois elas podem estar vazias agora, mas ter sido usadas no passado. Então, mesmo que você submeta a saída do
dd a compressão, nada garante que a compressão será muito eficiente.
Você poderia, em vez disso, usar o
tar (de preferência com opções que copiem ACLs e contextos do SELinux), e levar apenas o que estiver em uso no sistema de arquivos. Isso deve reduzir o tamanho total da transferência, mas tem algumas implicações, como, por exemplo, ter de particionar o disco na máquina de destino explicitamente e formatar e montar as partições criadas antes de se iniciar a cópia, e, após terminar a cópia, será necessário instalar o boot com o Grub (ou outro gestor de boot qualquer).
Tanto com o
dd como quanto com o
tar, o ideal seria montar os discos na máquina de origem como
read-only, porque o conteúdo do disco numa máquina em produção pode ser modificado durante a cópia, e isso pode gerar dados inconsistentes na máquina de destino (um pedaço da cópia feito antes da alteração, outro pedaço depois). Infelizmente, nem sempre é possível parar uma máquina de produção para fazer o P2V. No entanto, se você trabalhar com LVM ou sistemas de arquivos que suportem
snapshots (como Btrfs, XFS ou ZFS), você pode tirar um
snapshot antes do P2V, e rodar o
tar em cima do
snapshot, e não do dado corrente.