149428

Rettungs-Duo

Daten retten mit dd und dd_rescue

25.03.2009 | 09:18 Uhr |

Mit dem Tool-Gespann dd und dd_rescue sichern Sie komplette Partitionen und stellen sie schnell und bequem wieder her. Auch Daten von bereits defekten Festplatten können Sie damit noch retten.

Das Tool dd ist ein mächtiges Werkzeug mit zahlreichen
Schaltern.
Vergrößern Das Tool dd ist ein mächtiges Werkzeug mit zahlreichen Schaltern.
© 2014

Wenn ein von Ihnen liebevoll konfiguriertes System auf dem Rechner nicht mehr starten will – egal ob Windows oder Linux – ist guter Rat teuer. Meist lassen sich persönliche Daten noch retten, die Neu-Installation kostet allerdings viel Zeit. Mit dem Konsolen-Tool dd können Sie diesem Fall vorbeugen: Klonen Sie Ihre Systempartitionen dann, wenn alles korrekt funktioniert und eingerichtet ist. Bei Bedarf stellen Sie sie schnell wieder her oder ziehen damit das System auf neuere, größere Festplatten um. Ist Ihre Festplatte dabei, sich ganz zu verabschieden, etwa weil zu viele defekte Sektoren einen sauberen Start verhindern, hilft Ihnen das Kommandozeilenwerkzeug dd_rescue weiter.

Backup leicht gemacht
Das Tool dd (Disk Dump) ist eines der ältesten Linux-Tools. Es kopiert Datenträger Sektor für Sektor, unabhängig von dem darüberliegenden Dateisystem und den darauf befindlichen Daten. Es eignet sich also vorzüglich, um Backups von Disketten, CD/DVDs, USB-Sticks oder eben Partitionen und Festplatten zu erstellen. Backups werden dabei als sogenannte Image-Dateien abgelegt, also als Dateien, die ein exaktes Abbild des gesicherten Mediums enthalten. Diese Dateien können Sie dann später mit dem gleichen Tool auf ein anderes Medium zurückspielen. Unter Linux haben gesicherte Images einen weiteren Vorteil: Sie können sie direkt in das Dateisystem einbinden, um auf die enthaltenen Daten zuzugreifen.
Alternativ verwenden Sie dd, um Inhalte direkt von einer Festplatte auf eine andere zu übertragen, diese also zu klonen. Ein weiterer Vorteil: Das Tool „dd“ gibt es in verschiedenen Varianten auch für Windows. Abgesehen von der Systempartition können Sie also Backups einzelner Partitionen auch unter Windows erstellen und wieder einspielen. Alle hier vorgestellten Tools und Befehle funktionieren mit dem Live-System Systemrescue-CD .

Ein Backup der von fdisk angezeigten Linux-Partitionen
samt Master Boot Record.
Vergrößern Ein Backup der von fdisk angezeigten Linux-Partitionen samt Master Boot Record.
© 2014

Klonen mit dd
Um eine Festplatte zu klonen, müssen Sie ein paar Dinge beachten: Weder der Quell-Datenträger noch der Ziel-Datenträger dürfen eingebunden (gemountet) sein, denn zwischenzeitliche Zugriffe verhindern eine komplette Spiegelung. Sollten Sie also eine Systemplatte übertragen wollen, müssen Sie auf ein Live-System zurückgreifen, etwa auf die Systemrescue-CD . Achten Sie außerdem darauf, dass die Ziel-Festplatte mindestens genau so groß oder größer ist als das Quell-Laufwerk. Ursprünglich kleinere Partitionen können Sie später mit einem Partitionierungs-Tool wie Parted Magic anpassen. Die Ziel-Festplatte muss nicht partitioniert sein, denn dd überträgt beim Klonen den kompletten Festplatteninhalt samt Partitionstabelle. Um nun den Inhalt einer Festplatte auf eine andere zu übertragen verwenden Sie folgenden Befehl:
dd if=/dev/sda of=/dev/sdb
wobei /dev/sda die zu kopierende Festplatte ist und /dev/sdb der Ziel-Datenträger. War die ursprüngliche Festplatte bootfähig, sollten Sie sicherheitshalber zusätzlich den MBR (Master Boot Record) übertragen. Dazu verwenden Sie ebenfalls dd, allerdings mit leicht veränderter Syntax:
dd if=/dev/sda of=/dev/sdb bs=512count=1 Mit dem Parameter „bs“ legen Sie die Größe der Blöcke, mit „count“ die Anzahl der zu kopieren Blöcke fest, hier also ein Block mit der Größe von 512 Bytes.

Gesamte Festplatte sichern
Möchten Sie ein Backup einer bestehenden Festplatte oder Partition in einer Image-
Datei erstellen, benötigen Sie dafür natürlich genügend Speicherplatz auf einer weiteren Festplatte, um das Festplatten- oder Partitions-Image darauf unterzubringen. Außerdem muss auf der Ziel-Festplatte ein Dateisystem eingerichtet sein, das große Dateien speichern kann, etwa das unter Linux übliche Ext3- oder das Windows-eigene NTFS-Dateisystem. Binden Sie zunächst die Zielpartition (hier beispielsweise /dev/sdb1) in das Dateisystem ein, etwa mit
mount /dev/sdb1 /data1
Den Inhalt einer gesamten Festplatte (hier /dev/sda) übertragen Sie mit:
dd if=/dev/sda of=/data1/sda.img
Auch hier sollten Sie sicherheitshalber den MBR separat in einer Datei (hier: sda_mbr.img) sichern:
dd if=/dev/sda of=/data1/sda_mbr.imgbs=512 count= 1
Wollen Sie später das gespeicherte Image zurück auf die ursprüngliche Festplatte übertragen, sollten Sie sie zunächst mit
dd if=/dev/zero of=/dev/sda
leeren. Damit verhindern Sie, dass Reste der ursprünglichen Dateien dem zurückgespielten Backup in die Quere kommen, etwa wenn Sie Windows nach einem Virenbefall durch das Backup ersetzen wollen. Wenn Sie dann wie oben beschrieben die Backup-Partition erneut mit „mount /dev/sdb1 /data1“ ins System einbinden, können Sie anschließend mit dem Befehl
dd if=/data1/sda.img of=/dev/sda
das Image (im Beispiel sda.img) auf die Platte (hier: /dev/sda) zurückspielen. Mit
dd if=/data1/sda_mbr.img of=/dev/sda
machen Sie die Platte wieder bootfähig.
Beachten Sie aber, dass Sie komplette Festplatten-Images nicht ohne Weiteres in das Dateisystem einbinden können, um auf einzelne Dateien zuzugreifen. Wie Sie das bewerkstelligen, erfahren Sie im Kasten „Images einbinden“.

Partitionen sichern
Statt einer ganzen Festplatte können Sie auch nur eine einzelne Partition sichern. Der Vorteil: Wenn Sie etwa Daten und System auf unterschiedlichen Partitionen untergebracht haben, müssen Sie bei Problemen mit dem System nicht die gesamte Festplatte überschreiben. Sie können dann beispielsweise das zerschossene System zurückspielen und die Daten, die Sie auf weiteren Partitionen untergebracht haben, unangetastet lassen. Einzelne Partitionen können Sie auch ohne großen Aufwand unter Linux einbinden und dort Dateien einsehen, bearbeiten oder ersetzen. Mehr dazu erfahren Sie im Kasten „Images einbinden“.
Außerdem sollten Sie die ursprüngliche Partitionstabelle sichern, vor allem, wenn Sie mehrere Partitionen oder gar erweiterte Partitionen in logischen Laufwerken untergebracht haben. Mehr dazu erfahren Sie im Kasten „Partitionstabelle sichern“. Der eigentliche dd-Befehl zum Sichern einer Partition ist dem oben vorgestellten ähnlich. Nachdem Sie die Ziel-Festplatte mit „mount /dev/sdb1 /data1“ eingebunden haben, müssen Sie lediglich die Gerätebezeichnung der Festplatte durch die der Partition (hier: /dev/sda1) ersetzen, etwa
dd if=/dev/sda1 of=/data1/sda1.img
Einen Überblick über alle Partitionen auf sämtlichen Festplatten liefert der Befehl „fdisk -l“.

0 Kommentare zu diesem Artikel
149428