Festplatten Images mit dd erstellen und mounten
Inhaltsverzeichnis:
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.
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.