Ich weiß, im Internet gibt es zu diesem Thema schon hunderte Tutorials. Ich habe das Ganze hier trotzdem nochmal aufgeschrieben, damit ich für mich die wichtigsten Befehle auf einen Blick habe.

Wichtig beim Sichern mit dd ist, dass die Quell-Festplatte bzw. Partition nicht gemountet sein darf!

Festplatte klonen

dd if=/dev/sda of=/dev/sdb bs=1M

Die Angabe "bs=1M" gibt dabei die Anzahl an Bytes an, die auf einmal gelesen bzw. geschrieben werden. In dem Fall ist das 1MB, häufig wird auch 4096 Bytes verwendet. Das ist ein Wert, mit dem man etwas experimentieren kann. Je höher dieser Wert, desto schneller ist prinzipiell der Kopier/Klonvorgang. Bei einer defekten Platte sollte dieser Wert möglichst klein gewählt werden, damit nachher nicht so große Dateiblöcke fehlen.

Komplette Festplatte in ein Image sichern

dd if=/dev/sda of=/mnt/hdd/backup.img bs=1M

Einzelne Partition einer Festplatte sichern

Hier wird ebenfalls in ein Image gesichert, aber eben nur eine einzige Partition einer Festplatte:

dd if=/dev/sdaX of=/mnt/hdd/backup.img bs=1M

Fortschritt beobachten

dd ist an sich erstmal nicht sehr gesprächig. Es gibt aber Möglichkeiten, in den aktuellen Kopiervorgang doch Einsicht zu bekommen.

Möglichkeit 1

Mit "watch" lässt sich die Dateigrößen-Änderung der Zieldatei live beobachten, sofern man in eine Image-Datei sichert. So sieht man also, wie schnell das Image wächst und ob sich noch was tut.

Neuen Terminal-Reiter öffnen

watch --differences --interval=1 "du -h /mnt/hdd/backup.img"

Möglichkeit 2

Wird der Befehl "pv" dem dd-Befehl "zwischen geschoben" erhält man ebenfalls nützliche Informationen:

dd if=/dev/sda bs=1M | pv | dd of=/media/sda1/backup/image.img bs=1M

Lesefehler überspringen

Falls Lesefehler auf der Quell-Festplatte zu erwarten sind, kann man noch den Parameter "conv=noerror" anhängen, dann werden defekte Sektoren übersprungen. Außerdem sollte die zu kopierende Blockgröße so klein wie möglich gewählt werden, z.B. 64K.

dd if=/dev/sdaX of=/mnt/hdd/Backup.img bs=64K conv=noerror

Image mit gzip oder bzip2 komprimieren

bzip2 komprimiert dabei zwar etwas stärker, die Sicherung dauert aber auch wesentlich länger

dd if=/dev/sda1 bs=1M | gzip -c > /mnt/hdd/backup.img.gz
dd if=/dev/sda1 bs=1M | bzip2 -c > /mnt/hdd/backup.img.bz2

Festplaten-Image mounten:

Wenn man sich ein Image erstellt hat, lässt sich dieses wie jedes normale Laufwerk einbinden:

kpartx –a –v /mnt/hdd/backup.img
ls –l /dev/mapper
mount /dev/mapper/loop0p1 /mnt/dd-image/

Natürlich lässt sich das Image dann auch wieder wie gewöhnlich aushängen:

umount /media/dd-image

Festplatten-Image unter Windows mounten

Um ein RAW-Image unter Windows zu mounten, gibt es z.B. das Programm OSFMount.