Página Inicial > Linux > Usando o comando DD

Usando o comando DD

Usando o comando DD

O comando dd(de direct copy) e um clássico dos ambientes Unix-Like, com ele você pode fazer uma copia exata de um arquivo, ou seja uma copia  bit a bit.

Sintaxe básica:
$dd if=origem of=destino

Por exemplo:
bash-3.1$ ls -la
total 5272
drwxrwxrwx 2 v0rtex users 4096 2010-02-07 18:23 .
drwx--x--x 116 v0rtex users 4096 2010-02-07 18:03 ..
-rwxr-xr-x 1 v0rtex users 5375842 2007-12-25 21:04 05 - Whole Lotta Love.mp3
bash-3.1$ dd if=05\ -\ Whole\ Lotta\ Love.mp3 of=whole_lotta_love.mp3
10499+1 registros de entrada
10499+1 registros de saída
5375842 bytes (5,4 MB) copiados, 0,0682746 s, 78,7 MB/s
bash-3.1$ ls -lh
total 11M
-rwxr-xr-x 1 v0rtex users 5,2M 2007-12-25 21:04 05 - Whole Lotta Love.mp3
-rw-r--r-- 1 v0rtex users 5,2M 2010-02-07 18:23 whole_lotta_love.mp3

Foi feita uma copia do arquivo “05\ -\ Whole\ Lotta\ Love.mp3″ com o nome whole_lotta_love.mp3 :) uma copia exata feita bit-a-bit pelo comando dd.

Dicas para uso do comando dd:

Copiando um HD para um arquivo.
# dd if=/dev/sda of=~/backup_hd.img
Com isso será feita uma copia exata do hd dentro do diretório do root(#) com o nome “backup_hd.img”.

Se quiser restaurar o “backp_hd.img” no /dev/sda2(lembre o sda2 deve ter pelo menos o mesmo tamanho do arquivo “backup.hd” se não os resultados poderão ser desastrosos.
# dd if=backup_hd.img of=/dev/sda2

Copiando HD para HD:
#dd if=/dev/sda1 of=/dev/sda2
Com isso será feita copia do /dev/sda1 para o /dev/sda2.

Fazendo uma copia do hd para um arquivo compactado:
dd if=/dev/sda1 | gzip > backup_hd.img.gz
Para descompactar dentro de outro HD use:
# gzip -d -c backup_hd.img.gz | dd of=/dev/sda2

Criar um arquivo .iso:
#dd if=diretorio of=iso_do_diretorio.iso

Para visualizar progresso de cópia de arquivos, vá em outro terminal e execute:
$ watch df -h

Para converter todos as letras maiúsculas de um documento para letras minúsculas:
$dd if=ficheiro1 of=ficheiro2 conv=lcase
se quisermos converter todas as letras do ficheiro2 para maiúsculas:
$dd if=ficheiro2 of=ficheiro3 conv=ucase

Para zerar(formatar) o seu HD:
# dd if=/dev/zero of=/dev/hda

Gerar senhas de forma (pseudo) aleatória:
$ dd if=/dev/random bs=1 count=8 | base64 -

Referências:

man DD
Como copiar a imagem de um HD para outro usando o Linux:
Comando dd – Truque para visualizar progresso de cópia de arquivos:
Tutorial clonas HD com dd.
Via @Dalton Barreto

Compartilhe:
  • Twitter
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Technorati
  • Rec6
  • Slashdot
  • FriendFeed
  • Digg
  • Print
  • PDF
  • email
  • Add to favorites
Categories: Linux Tags: , ,
  1. 14, Fevereiro, 2010 a 17:27 | #1

    Um outro uso clássico do dd é para gerar senhas de forma (pseudo) aleatória. É assim que gero todas as minhas senhas atualmente:

    $ dd if=/dev/random bs=1 count=8 | base64 -

    Parabéns pelo blog! Feed devidamente assinado! =D

  2. 14, Fevereiro, 2010 a 17:31 | #2

    @Dalton Barreto

    Boa essa não conhecia :D

    []’s

  1. 7, Fevereiro, 2010 a 18:13 | #1
SEO Powered by Platinum SEO from Techblissonline