dd este un utilitar de linie de comandă pentru sistemele de operare Unix și Unix-like, al căror scop principal este de a converti și copia fișiere.
- Pe Unix, driverele de dispozitiv pentru hardware (cum ar fi unitățile de disc) și fișierele speciale de dispozitiv (cum ar fi /dev/zero și /dev/random) apar în sistemul de fișiere la fel ca fișierele normale.
- dd poate citi și/sau scrie și din/în aceste fișiere, cu condiția ca această funcție să fie implementată în driverele lor respective
- Ca rezultat, dd poate fi folosit pentru activități precum backupul sectorului de pornire al unui hard disk și obținerea unei cantități fixe de date aleatorii.
- Programul dd poate efectua, de asemenea, conversii asupra datelor pe măsură ce sunt copiate, inclusiv schimbarea ordinelor octeților și conversia către și de la codificările text ASCII și EBCDIC.
Utilizare: Sintaxa liniei de comandă a lui dd diferă de multe alte programe Unix, prin aceea că folosește sintaxa opțiune=valoare pentru opțiunile sale de linie de comandă, mai degrabă decât cele mai standard -valoarea opțiunii sau –opțiune=valoare formate. În mod implicit, dd citește din stdin și scrie în stdout, dar acestea pot fi modificate utilizând opțiunile if (fișier de intrare) și of (fișier de ieșire).
Câteva exemple practice despre comanda dd:
- Pentru a face o copie de rezervă a întregului hard disk: Pentru a face backup la o copie întreagă a unui hard disk pe un alt hard disk conectat la același sistem, executați comanda dd așa cum se arată. În acest exemplu de comandă dd, numele dispozitivului UNIX al hard disk-ului sursă este /dev/hda, iar numele dispozitivului hard disk-ului țintă este /dev/hdb.
- dacă reprezintă fișierul de intrare și de reprezintă fișierul de ieșire. Deci, copia exactă a /dev/sda va fi disponibil în /dev/sdb .
- Dacă există erori, comanda de mai sus va eșua. Daca dai parametrul conv=noerror atunci va continua să copieze dacă există erori de citire.
- Fișierul de intrare și fișierul de ieșire ar trebui menționate cu mare atenție. În cazul în care menționați dispozitivul sursă în țintă și invers, s-ar putea să vă pierdeți toate datele.
- Pentru a copia, hard disk pe hard disk folosind comanda dd prezentată mai jos, opțiunea de sincronizare vă permite să copiați totul folosind I/O sincronizat.
# dd if=/dev/sda of=/dev/sdb conv=noerror, sync>
# dd if=/dev/sda of=/dev/sdb>
# dd if=/dev/hda1 of=~/partition.img>Pentru a crea o imagine a unui hard disk: în loc să faceți o copie de rezervă a hard disk-ului, puteți crea un fișier imagine al hard disk-ului și îl puteți salva în alte dispozitive de stocare. Există multe avantaje ale copierii de rezervă a datelor pe o imagine de disc, unul fiind ușurința în utilizare. Această metodă este de obicei mai rapidă decât alte tipuri de backup, permițându-vă să restaurați rapid datele în urma unei catastrofe neașteptate. Creează imaginea unui hard disk /dev/hda.
# dd if=/dev/hda of=~/hdadisk.img>Pentru a restaura folosind imaginea hard disk: Pentru a restaura un hard disk cu fișierul imagine al unui alt hard disk, poate fi utilizată următoarea comandă dd
# dd if=hdadisk.img of=/dev/hdb>
Fișierul imagine hdadisk.img este imaginea unui /dev/hda, astfel încât comanda de mai sus va restaura imaginea /dev/hda în /dev/hdb. Pentru a crea CDROM Backup: comanda dd vă permite să creați un fișier iso dintr-un fișier sursă. Așadar, putem introduce CD-ul și introduceți comanda dd pentru a crea un fișier iso al conținutului unui CD.
# dd if=/dev/cdrom of=tgsservice.iso bs=2048>
Comanda dd citește un bloc de intrare și îl procesează și îl scrie într-un fișier de ieșire. Puteți specifica dimensiunea blocului pentru fișierul de intrare și de ieșire. În exemplul de comandă dd de mai sus, parametrul bs specifică dimensiunea blocului atât pentru fișierul de intrare, cât și pentru fișierul de ieșire. Deci dd folosește 2048 de octeți ca dimensiune de bloc în comanda de mai sus.
Referinte: