dd

Från Wikipedia
Hoppa till: navigering, sök
För andra betydelser, se DD (olika betydelser).

dd är ett UNIX-program som används för att kopiera rådata. Det vanligaste användningsområdet för dd är att klona diskar, filsystem med mera. Programmet klarar av olika enkla transformationer av datat, såsom att omvandla mellan ASCII och EBCDIC, att ersätta oläsbara delar av en fil med NUL och att fylla ut halvfulla poster. Programmet kan också plocka ut delar av en fil, kopiera till mitten av en fil och styra hur datat läses eller skrivs då en fil representerar en fysisk I/O-enhet.

I Unix representeras diskar och andra I/O-enheter av filer och vanligen är det en sådan pseudofil man läser eller skriver med dd. De olika specialfunktionerna kan behövas till exempel då man kopierar mellan magnetband och hårddisk, kopierar data lagrat i ett annat operativsystem, då lagringsmediet är skadat eller man är intresserad av enskilda delar av en fil.

Exempel[redigera | redigera wikitext]

  • Säkerhetskopiera MBR (den första sektorn) på en hårddisk till filen "disk1.MBR":
dd if="/dev/sda" of="disk1.MBR" bs=512 count=1
  • Klona en hårddisk eller ett USB-minne (sda) till en fysiskt likadan enhet (sdb):
dd if=/dev/sda of=/deb/sdb
  • Kopiera data från en partition på en skadad hårddisk (sdb) till en tom partition i slutet av en annan hårddisk (sda), för att kunna analysera och återskapa datat utan att behöva läsa datat fler gånger från den skadade disken.
dd if=/dev/sdb1 of=/dev/sda7 bs=512 conv=noerror,sync
dd if=/dev/cdrom of=/home/avbild.iso
  • Skapa en fil med viss storlek, t.ex. 1 GiB (1024³/512 sektorer).
dd if=/dev/zero of=/home/file bs=512 count=2097152

Filen går att formatera och montera i filsystem.

mkfs.ext3 /home/file
mount -o loop /home/file /www/upload/
dd if=/dev/zero of=/swap bs=512 count=1048576
mkswap /swap
swapon /swap
echo "/swap           swap         swap          defaults          0     0" >> /etc/fstab