dd és una utilitat de línia d'ordres per a sistemes operatius Unix i similars a Unix, el propòsit principal dels quals és convertir i copiar fitxers.
- A Unix, els controladors de dispositiu per al maquinari (com ara les unitats de disc dur) i els fitxers de dispositiu especials (com ara /dev/zero i /dev/random) apareixen al sistema de fitxers igual que els fitxers normals.
- dd també pot llegir i/o escriure des/a aquests fitxers, sempre que aquesta funció estigui implementada als seus respectius controladors
- Com a resultat, dd es pot utilitzar per a tasques com fer una còpia de seguretat del sector d'arrencada d'un disc dur i obtenir una quantitat fixa de dades aleatòries.
- El programa dd també pot realitzar conversions de les dades a mesura que es copien, inclòs l'intercanvi d'ordres de bytes i la conversió cap a i des de les codificacions de text ASCII i EBCDIC.
Ús : La sintaxi de la línia d'ordres de dd difereix de molts altres programes Unix, ja que utilitza la sintaxi opció=valor per les seves opcions de línia d'ordres, en lloc de les més estàndard -valor de l'opció o –opció=valor formats. De manera predeterminada, dd llegeix de stdin i escriu a stdout, però es poden canviar utilitzant les opcions if (fitxer d'entrada) i of (fitxer de sortida).
Alguns exemples pràctics sobre l'ordre dd:
- Per fer una còpia de seguretat de tot el disc dur: per fer una còpia de seguretat d'una còpia sencera d'un disc dur a un altre disc dur connectat al mateix sistema, executeu l'ordre dd tal com es mostra. En aquest exemple d'ordre dd, el nom del dispositiu UNIX del disc dur d'origen és /dev/hda i el nom del dispositiu del disc dur de destinació és /dev/hdb.
- si representa el fitxer d'entrada i de representa el fitxer de sortida. Així que la còpia exacta de /dev/sda estarà disponible a /dev/sdb .
- Si hi ha algun error, l'ordre anterior fallarà. Si doneu el paràmetre conv=noerror aleshores es continuarà copiant si hi ha errors de lectura.
- El fitxer d'entrada i el fitxer de sortida s'han d'esmentar amb molta cura. Per si de cas, mencioneu el dispositiu d'origen a la destinació i viceversa, podeu perdre totes les vostres dades.
- Per copiar, el disc dur al disc dur mitjançant l'ordre dd que es mostra a continuació, l'opció de sincronització us permet copiar-ho tot mitjançant E/S sincronitzada.
# dd if=/dev/sda of=/dev/sdb conv=noerror, sync>
# dd if=/dev/sda of=/dev/sdb>
# dd if=/dev/hda1 of=~/partition.img>Per crear una imatge d'un disc dur: en lloc de fer una còpia de seguretat del disc dur, podeu crear un fitxer d'imatge del disc dur i desar-lo en altres dispositius d'emmagatzematge. Hi ha molts avantatges de fer una còpia de seguretat de les dades en una imatge de disc, un és la facilitat d'ús. Aquest mètode sol ser més ràpid que altres tipus de còpies de seguretat, la qual cosa us permet restaurar ràpidament les dades després d'una catàstrofe inesperada. Crea la imatge d'un disc dur /dev/hda.
# dd if=/dev/hda of=~/hdadisk.img>Per restaurar amb la imatge del disc dur: per restaurar un disc dur amb el fitxer d'imatge d'un altre disc dur, es pot utilitzar la següent comanda dd
# dd if=hdadisk.img of=/dev/hdb>
El fitxer d'imatge hdadisk.img és la imatge d'un /dev/hda, de manera que l'ordre anterior restaurarà la imatge de /dev/hda a /dev/hdb. Per crear una còpia de seguretat de CDROM: l'ordre dd us permet crear un fitxer iso a partir d'un fitxer font. Així podem inserir el CD i introduir l'ordre dd per crear un fitxer iso del contingut d'un CD.
# dd if=/dev/cdrom of=tgsservice.iso bs=2048>
L'ordre dd llegeix un bloc d'entrada i el processa i l'escriu en un fitxer de sortida. Podeu especificar la mida del bloc per al fitxer d'entrada i sortida. A l'exemple d'ordre dd anterior, el paràmetre bs especifica la mida del bloc per al fitxer d'entrada i de sortida. Així que dd usa 2048 bytes com a mida de bloc a l'ordre anterior.
Referències: