Harddisk-Clone mit dd inkl. Komprimierung und Statusanzeige
Auf dem Zielrechner
Zuerst muss der Zielrechner vorbereitet werden. Dabei kann der Port (-p 555) frei gewählt werden. Er muss nur entsprechend auf der Gegenseite identisch sein. Für
netcat -l -p 5555 | dd of=/dev/hdx bs=16065b
Auf dem Quellrechner
dd if=/dev/hda bs=16065b | pv | bzip2 -1 | netcat ZielIP 5555
Die Blocksize sind 100 KB, da dies auch der Blockwert von bzip2 -1 ist. Es wird die erste lokale IDE-Platte als Quelle verwendet. Die Komprimierung ist in diesem Fall mit bzip2, welches recht langsam ist, aber große Blöcke mit gleichen Daten (z.B. leere Plattenbereiche, auf denen noch keine Daten liegen) sehr gut komprimiert. Falls pv nicht gefunden wird, kann dieser mit apt-get install pv installiert werden.
Warum netcat: Netcat verschlüsselt nicht und hat somit Geschwindigkeitsvorteile gegenüber ssh.
Alternativ geht dies natürlich auch ohne Komprimierung oder mit einem “normalen” Gzip.
dd if=/dev/hda bs=16065b | pv | netcat ZielIP 5555
dd if=/dev/hda bs=16065b | pv | gzip -1 | netcat ZielIP 5555
Man muss mit den Werten rumspielen, um entsprechend der CPU- und Netzwerkleistung die richtigen Werte zu finden. Die Blocksize (bs=) muss auf beiden Seiten immer identisch sein und kann mit fdisk -l /dev/hda geprüft werden.
Ohne pv geht es natürlich auch. Allerdings ist das dann wie früher mit ISDN: Man sieht nichts, man riecht nicht und man hört nichts. ;-)
Clone in eine Datei
dd if=/dev/hda bs=16065b | pv | gzip -1 >/mnt/irgendwo/clone.gz
Rücksicherung:
gunzip -dc /mnt/irgendwo/clone.gz | pv | dd of=/dev/hdc bs=16065b
Das ganze über SSH:
dd if=/dev/hda bs=16065b | pv | gzip -c | ssh user@host "cat > clone.gz"
Und noch eine Rücksicherung über SSH:
ssh user@host "gzip -d -c clone.gz" | pv | dd of=/dev/hda bs=16065b
Interessante Beiträge zu diesem Thema
- Howto über HDPARM
- Gnome und das ED2K-Protokoll von aMule
- Tastaturkombination in Gnome zum starten von Programmen
- Verzeichnisse und Dateien aufspüren die Festplattenspeicher verschwenden
- Rsync über SSH-Tunnel mit verändertem Port
- sysvconfig - Runlevel Editor
- Wichtigsten Linux-Befehle auf (fast) einem Blatt
- Fernwartung einer SSH-Verbindung auf der Console mit screen
- Zugriff auf SFTP beschränken
- htop - Alternative zum (Linux)-Befehl top

Hi, die Befehlszeilen enthalten leider ein paar Fehler - so endet man in Variante 1 mit einem KOMPRIMIERTEN Abbild auf der Zielfestplatte, es auf der Zielseite das Entpacken des ge-bzip-ten Datenstroms fehlt, bevor er auf hdx geschrieben wird.
Zudem sind 16065b nicht 100kb, wenn ich nicht irre :-)
Zudem möchte ich noch das Tool dcfldd erwähnen, u.a. weil es eine Statusanzeige eingebaut hat.
Insgesamt aber wieder ein nützlicher Artikel, wie so vieles anderes in diesem Blog auch. Weiter so!
Hallo, wirklich sehr gute Anleitung. Hat mir sehr weiter geholfen.