Wie übertrage ich ein Image von meiner internen Festplatte auf eine externe Festplatte mit DD? Hier sind meine Festplatteninformationen
root@PartedMagic:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 44.3M 0 part
├─sda2 8:2 0 753M 0 part
└─sda3 8:3 0 930.7G 0 part
sdb 8:16 0 931.5G 0 disk
└─sdb1 8:17 0 931.5G 0 part
sr0 11:0 1 595M 0 rom
loop0 7:0 0 39.3M 1 loop
loop1 7:1 0 184.1M 1 loop
sda ist meine interne Festplatte
sdb ist meine externe Festplatte
Antwort1
Warnung
dd
ist ein mächtiges, aber auch gefährliches Tool. Überprüfen Sie mehrmals, ob alles richtig ist, bevor Sie die Befehlszeilen starten! dd
tut, was Sie sagen, ohne Fragen zu stellen. Ein kleiner Fehler (Tippfehler) kann dazu führen, dass Sie wertvolle Dokumente, beispielsweise Familienfotos, überschreiben und zerstören.
Befehlszeilen
Der Text nach dem #
Zeichen ist ein Kommentar für das menschliche Auge und wird vom Shell-Interpreter nicht verwendet.
Wenn du bistSicherdass /dev/sdx
das richtige Zielgerät ist, können Sie den Befehl verwenden
sudo dd if=/dev/sda of=/dev/sdx bs=64K # should be upper case K
um das Laufwerk auf das Gerät zu klonen /dev/sdx
, wobei x b, c, ... sein kann.
Wenn Sie eine Image-Datei (ohne Komprimierung) erstellen möchten, können Sie den Befehl
sudo dd if=/dev/sda of=dd-clone.img bs=64K # should be upper case K
Wenn Sie eine komprimierte Bilddatei erstellen möchten, können Sie den Befehl
sudo -s # to get the root prompt `#`
dd if=/dev/sda bs=64K | xz -c > dd-clone.img.xz
exit # to get the user prompt `$`
Ein solches komprimiertes Bild kann extrahiert werden mit
sudo -s # get the root prompt `#`
xzcat dd-clone.img.xz > dd-clone.img # get a big uncompressed file
xzcat dd-clone.img.xz | dd of=/dev/sdx bs=64K # clone to `/dev/sdx`
exit # get the user prompt `$`
Tipps
Wenn Sie eine effizientere Komprimierung wünschen, sollten Sie den freien Speicherplatz mit Nullen überschreiben. Dies können Sie folgendermaßen tun:
zerofree
Für Linux- Partitionen verwenden ext
.
Mounten Sie andere Partitionen und verwenden Sie die folgenden Befehlszeilen für Partitionen mit anderen Dateisystemen.Nehmen wir an, Sie haben eine Partition am Einhängepunkt eingehängt/mnt
, und dass das gesamte Laufwerk für Partitionen verwendet wird. Überprüfen Sie, ob Sie dort eine Partition gemountet haben! Andernfalls füllen Sie die Root-Partition und Ihr laufendes Betriebssystem funktioniert nicht mehr.
sudo dd if=/dev/zero of=/mnt/blank bs=4096 # Let it fill the partition
sudo rm /mnt/blank
SehenWerkzeugeunter diesem Link:SanDisk SSD Plus: Halb so viel Leistung unter Linux wie unter Windows?
Alternative
Clonezillaist eine Alternative zu dd
. Es ist sicherer und schneller, insbesondere wenn viel freier Speicherplatz vorhanden ist. Clonezilla kopiert nur verwendete Blöcke (und überspringt freie Blöcke), wodurch das Kopieren viel schneller wird, insbesondere wenn ein beträchtlicher Teil der Hauptpartition /dev/sda3
frei ist (nicht von Dateien verwendet wird).