dd is een computerprogramma in Unix waarmee het mogelijk is bestanden, karakter- of block-devices van of naar elkaar te kopiëren. Ook is het mogelijk bepaalde conversies te doen (bijvoorbeeld het omzetten van ASCII naar EBCDIC of andersom). Een voorbeeld van het gebruik van de tool dd is het leegmaken van een harde schijf of het klonen van een harde schijf. In combinatie met netcat (nc) kan bijvoorbeeld een harde schijf of partitie gekloond worden via een netwerk.

Het programma is gebaseerd op JCL van IBM, waar dd een afkorting is van data definition (gegevensbeschrijving).[1] Vaak wordt beweerd dat de afkorting dd voor disk dumper of iets dergelijks staat. Als grap wordt dd ook wel disk destroyer (schijfvernietiger), data destroyer (gegevensvernietiger) of delete data (verwijder gegevens) genoemd, omdat een kleine vergissing zoals het omwisselen van if (inputfile) en of (outputfile) mogelijk het verlies van gegevens tot gevolg heeft. Iets serieuzer is de bewering dat het voor convert and copy (converteer en kopieer) staat, maar dat het commando cc al bestond (c-compiler).

Voorbeelden bewerken

Een harde schijf kan met onderstaand commando volledig gewist worden:

# dd if=/dev/zero of=/dev/sda

Een methode om een harde schijf te vullen met random data middels dd is in onderstaand voorbeeld zichtbaar:

# dd if=/dev/urandom of=/dev/sda

Onderstaand commando wordt gebruikt om een één-op-één kopie te maken van een harde schijf. In dit voorbeeld is sda de bronschijf en sdb de schijf waar de kopie op beschreven wordt. Let wel op dat de doelschijf even groot moet zijn als de originele schijf. Is de doelschijf kleiner of groter dan de originele schijf dan is niet gegarandeerd dat de kopie functioneert.

# dd if=/dev/sda of=/dev/sdb

Externe links bewerken