Linux: Festplatte samt aller Partitionen spiegeln

Führst Du ein Upgrade deiner Festplatte oder SSD auf ein größeres Modell durch und möchtest das Betriebssystem nicht neu installieren ist es ganz einfach möglich, mit Linux-Boardmitteln, eine alte Platte auf die neue, größere Platte Bitgenau zu übertragen.

Mit fdisk -l lassen wir uns zunächst alle angeschlossen Datenträger auflisten. Wir erhalten nun eine Liste mit allen angeschlossenen Speichermedien, inklusive deren Bezeichnung.

Im nachfolgendem Beispiel ist die Platte, die wir spiegeln möchten /dev/sda. Auf dem Datenträger /dev/sda sind mehrere Partitionen vorhanden. In diesem Fall /dev/sda1 bis /dev/sda4. Diese Partitionen sind für uns aber irrelevant.
Die neue SSD ist hier als /dev/sdb eingebunden.

fdisk -l
Hier sehen wir die eingebundenden Datenträger inkl. Partitionen.

Um /dev/sda auf /dev/sdb zu spiegeln benutzen wir das Tool dd.

Aber Achtung: Mit dd ist ebenso möglich alle Daten auf der Festplatte zu Überschreiben oder zu Löschen. Eine Abfrage ob der Befehl ausgeführt werden soll erfolgt nicht. Ein sichern der Daten ist also auf jeden Fall empfehlenswert.

sudo dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync status=progress 

Wir kopieren hier den Datenträger /dev/sda auf den neuen Datenträger /dev/sdb mit einer Blockgröße (bs) von 64kB, überspringen evtl. Fehler (noerror), füllen fehlerhafte Blöcke mit Nullen (sync) und geben den Status während der Übertragung aus (status=progress).

Haben wir, wie in diesem Beispiel eine kleinere (120GB) Festplatte auf eine größere (500GB) Festplatte gespiegelt müssen wir anschließend noch die leeren Sektoren einer oder mehreren Partitionen zuweisen. Dafür kann man zum Beispiel eine LiveCD von GRUB verwenden. Ansonsten beläuft sich die nutzbare Größe des neuen Datenträgers auf die des zuvor verwendeten.