Nesse caso, a diferença é que dd está restrito a ler blocos de 4096 bytes por vez, pois você usou bs=4096 . O efeito provável é que dd será muito, muito mais lento que cp . Tente com um tamanho de bloco maior ( 10M , 50M ?).
O tamanho do buffer específico mais adequado para os dispositivos atuais pode ser diferente de cp (ou cat 's). Você não pode controlar facilmente o buffer de cp . O utilitário dd brilha quando:
- você tem muito dispositivos grandes para copiar, de modo que vale a pena experimentar para determinar o melhor tamanho de bloco.
- você tem que copiar apenas parte de um disco. Você pode especificar
countpara limitar quantos blocos são copiados. - você deseja retomar uma cópia interrompida. Você não pode fazer isso com
cp, mas pode tentar comdd, usando as opçõesseekeskip. -
você quer canalizá-lo para a entrada padrão de algo (reconhecidamente,
catfuncionará aqui também):dd if=/dev/sda bs=10M | ssh host dd of=/dev/sdb
dd é muito bem discutida neste post do Unix e Linux:
dd vs cat - o dd ainda é relevante nos dias de hoje?