A página dd
man, pelo menos no meu sistema Debian Linux atual, diz para a sinopse "copiar e converter um arquivo". Isso pode ser um pouco confuso.
O objetivo original de% p_de% era converter um arquivo do formato IBM EBCDIC em formato ASCII. Ele ainda faz isso se você especificar as opções corretas, mas a menos que você tenha um monte de arquivos de mainframes da IBM por aí, você não vai usá-lo assim muito.
dd
simplesmente copia bytes brutos do arquivo de entrada ( dd
) para o arquivo de saída ( if=
) O número de bytes que copiará será of=
times bs=
.
O poder (potencialmente muito destrutivo) de count=
é que ele não liga para os arquivos especificados: arquivos reais, partições de disco bruto ( dd
), o próprio dispositivo de disco bruto ( /dev/sda1
), padrão entrada ou saída, uma unidade de fita, um dispositivo flash MTD, CMOS do seu sistema ( /dev/sda
), sua memória de vídeo gráfica ( /dev/nvram
), memória do kernel ( /dev/fb0
), etc. >
Portanto, como a tabela de partição do disco rígido reside no bloco 0 do disco rígido e o bloco tem 512 bytes, isso fará backup da tabela de partição do disco rígido (e do primeiro estágio) em um arquivo:
/dev/kmem
Se você quiser restaurá-lo por algum motivo, basta inverter os parâmetros # dd if=/dev/sda of=sda.sector0.bin bs=512 count=1
e if=
.
Se você não especificar of=
, continuará até o final do dispositivo. Isto irá escrever zeros em todo o seu disco rígido:
count=
Portanto, tenha cuidado.