Depende para o que exatamente serve a partição e qual é o objetivo da cópia. No entanto, direi que, em geral, ddé uma ferramenta inadequada para fazer backup de sistemas de arquivos . Não foi para isso que ele foi planejado.
Vai perder muito tempo copiando seções vazias da partição.
Pode levar a inconsistências se o sistema de arquivos estiver montado no momento, em parte porque é uma entidade no nível do SO e pode estar fora de sincronia com o dispositivo de bloco subjacente. Ligar syncinicialmente não ajudará muito com isso, pois o processo não é instantâneo.
Use cp -aou em rsyncvez disso. Você precisará criar a partição de destino, é claro, para que não seja tão fácil, mas é muito mais seguro e flexível. Se você precisar criar uma imagem do sistema de arquivos , veja abaixo.
Se você pretende copiar o sistema de arquivos raiz, absolutamente não o utilize dd. Você deve usar algo como rsync -ax(ou cp -axem diretórios individuais de nível superior), porque há várias coisas que NÃO devem estar na cópia . No Linux, isso inclui:
/dev
/lost+found
/mnt
/proc
/run
/sys
/tmp
Algumas delas são realmente interfaces de kernel e não diretórios reais no disco. Se você copiá-los, estará copiando um monte de informações que não serão aplicadas na cópia; se você tentar executar um sistema com ele, isso representará apenas espaço desperdiçado, pois a interface real será montada no topo. Outros contêm informações temporárias em uso pela execução de processos e esses são mais um problema, pois o sistema não poderá resolver o lixo se você o copiar.
Se você deseja criar um arquivo de imagem do sistema de arquivos raiz (ou qualquer sistema de arquivos), crie um arquivo de imagem vazio - este é um uso apropriado para dd:
dd if=/dev/zero of=whatever.img bs=1024 count=1000000
Essa é uma imagem de 1024 MB (1000000 * 1024). Ajuste countse você quiser outro tamanho. Crie, por exemplo, um extsistema de arquivos no arquivo :
mke2fs whatever.img
Ele avisará que este não é um dispositivo de bloco real. Continuar. Agora monte o arquivo de imagem:
mount whatever.img /mnt/img
/mnt/imgdeve existir, mas poderia qualquer coisa. Agora você pode rsync(ou cp -a) entrar /mnt/img. O conteúdo permanecerá dentro whatever.imgquando você o desmontar.
Contudo...
Só para esclarecer, use o método de imagem do sistema de arquivos descrito acima apenas se você precisar absolutamente de um arquivo de imagem por qualquer motivo. Se seu objetivo é copiar a partição para outro disco rígido, você não precisa de uma imagem : crie uma nova partição com um sistema de arquivos vazio nessa unidade, monte-a e copie nela. Você pode simplesmente colocar o conteúdo do sistema de arquivos em um diretório vazio e arquivá-lo:
tar -czf myarchive.tar.gz [the directory path]
Você pode implantar isso em uma partição existente (vazia ou não), colocando-a no nível superior e usando:
tar -xzf myarchive.tar.gz
Cuidado que substituirá os arquivos existentes se seus caminhos corresponderem a algo no arquivo morto. Caso contrário, deixará a hierarquia de diretórios existente a mesma.