dd ist ein Unix-Befehl, der zum Umleiten von Datenströmen dient.
Hintergrund
dd dient zum Umleiten von Datenströmen. Der Name sollte früher Copy and Convert bedeuten, das Programmkürzel cc war aber schon an den C-Compiler vergeben. Daher kam es zu dd, als Kürzel für disk dump.
dd unterscheidet sich stark von dem Unix-Kopierprogramm cp. Während cp mit Dateien umgeht und diese kopiert kann dd ganze Datenströme umleiten. So können ganze Partitionen oder Festplatten Byte für Byte kopiert werden. Es werden also nicht nur die existierenden Dateien überspielt sondern ein genaues Abbild erstellt. Daher ist dd gerade in der IT-Forensik unerlässlich.
Benutzung
Die Syntax von dd ist:
dd [Operand]...Convert the file according to a comma-separated list of keywords. dd OPTION
Operanden
if=Datei
Der Datenstrom, der umgeleitet werden soll. Das kann eine Datei, aber auch eine Festplatte oder ein anderes Gerät sein. So wird zur Überschreibung einer Festplatte mit Zufallszahlen of if=/dev/random angegeben. Wird if weggelassen liest dd von der Standardeingabe.
of=Datei
Die Datei, auf die geschrieben werden soll. Dies kann wieder eine Datei oder ein Gerät sein. Wird of weggelassen schreibt dd auf die Standardausgabe.
ibs=Bytes
Eingabe-Blockgröße (input block size), gibt an, wie viele Bytes auf ein Mal gelesen werden sollen.
obs=Bytes
Ausgabe-Blockgröße (output block size), gibt an, wie viele Bytes auf ein Mal geschrieben werden sollen.
bs=bytes
Kurzschreibweise für ibs=bytes obs=bytes. Der Standardwert bei Nichtangabe ist 512 Bytes.
count=Blocks
Angabe, um nur eine begrenzte Menge Blöcke zu kopieren.
skip=Blocks
Angabe, um eine Anzahl Blocks zu überspringen.
seek=blocks
Überspringt diese Anzahl Blöcke beim schreiben auf die Ausgabe.
conv=Schlüsselwörter
Wandelt die Datei entsprechend einer kommagetrennten Liste von Schlüsselwörtern um.
cbs=Bytes
Umwandlungs-Blockgröße (convert block size): Größe der Blöcke zum Umwandeln auf ein Mal.
Beispiele
Einige Beispiele zum Verdeutlichen der Funktionalität.
dd if=/dev/urandom of=/dev/hda Überschreibt die Festplatte mit Pseudozufallszahlen dd if=/dev/hda of=/dev/hdb Kopiert eine gesamte Festplatte auf eine andere dd if=/dev/hda3 of=./hda3.img Erstellt ein Image der Festplattenpartition