
Ich suche nach einer Möglichkeit, Festplatten (hauptsächlich Windows-Partitionen) zu klonen und dabei im Ubuntu-Betriebssystem zu bleiben. Ich möchte keine Partition auf der Festplatte erstellen, von der ich booten kann, und ich möchte keine Boot-CD verwenden. Das Einzige, was mir in etwa einfällt, ist die 32-Bit-Version von Ghost, die vom Desktop in Windows aus ausgeführt werden kann.
Es muss nicht Clonezilla sein, aber das ist die einzige Linux-Klonsoftware, die ich verwendet habe, und ich habe sie fast ausschließlich verwendet, seit ich sie entdeckt habe. Wenn es keine Möglichkeit gibt, Clonezilla vom Desktop aus zu verwenden, dann akzeptiere ich ein alternatives Programm. Die Hauptsache ist, dass es Laufwerke klont und innerhalb von Ubuntu läuft.
Vielen Dank für Ihre Zeit im Voraus
Antwort1
Clonezilla wird dd
hinter den Kulissen verwendet.
Informationen zu Festplatten und Partitionen
Eine ganze Festplatte ist ein Gerät wie /dev/sda
. Dies ist die erste Festplatte, die zweite Festplatte ist /dev/sdb
, die dritte /dev/sdc
usw. Ältere Festplatten, die über ein IDE-Kabel angeschlossen sind, werden wie hda
, hdb
, ... benannt. Eine Festplatte kann mehrere Partitionen haben, wie /dev/sda1
. Die zweite Partition auf der Festplatte /dev/sda
ist /dev/sda2
und so weiter. Ein Image (wörtliche Kopie von Bytes) kann sowohl von einer Partition als auch von einer Festplatte erstellt werden. Beachten Sie, dass die ersten 512 Bytes einer Festplatte den MBR (Master Boot Record) enthalten.
Beim Erstellen oder Wiederherstellen von Images sollte eine Partition nicht gemountet sein. Andernfalls kann es beim Lesen von der Partition (Erstellen eines Images) zu Datenverlust oder beim Schreiben auf die Partition (Wiederherstellen aus einem Image) zu unerwartetem Verhalten und Datenbeschädigung kommen.
In den folgenden Beispielen /dev/sda1
ist dies die Partition, von der ein Image erstellt werden soll.
Partitionen und Festplattengeräte /dev
sind nur für den Superuser (Root) und Benutzer der disk
Gruppe beschreibbar. Ich mag es nicht, alles als Root auszuführen, also ändere ich aus Sicherheitsgründen (falls Sie zum Beispiel einen Tippfehler gemacht haben) die Gruppe temporär auf mich selbst, damit ich darin lesen und schreiben kann:
sudo chgrp my_user_name /dev/sda1
Wenn Sie den obigen Befehl überspringen, müssen Sie den folgenden dd
Befehlen das Präfix voranstellen sudo
.
Grundlagen
Der grundlegende Befehl zum Erstellen eines Images aus einer Partition lautet:
dd if=/dev/sda1 of=disk.img
if
bedeutet „Eingabedatei“, of
bedeutet „Ausgabedatei“. Alles in Linux ist eine Datei, sogar Geräte.
Um ein solches Image wiederherzustellen, führen Sie Folgendes aus:
dd if=disk.img of=/dev/sda1
Die Reihenfolge spielt keine Rolle, Sie hätten das obenstehende dd of=/dev/sda1 if=disk.img
auch so schreiben können.
Komprimierte Bilder
Da Partitionen im Allgemeinen groß sind, empfiehlt es sich, die Daten vor dem Schreiben in das Image zu komprimieren:
dd if=/dev/sda1 | gzip > disk.img.gz
Dies funktioniert, weil, wenn of
es weggelassen wird, die Ausgabe in die „Standardausgabe“ geschrieben wird, die die Pipe zum Komprimierungsprogramm darstellt gzip
. Die Ausgabe davon wird in geschrieben disk.img
.
Um ein solches komprimiertes Image wiederherzustellen, führen Sie Folgendes aus:
gunzip -c disk.img.gz | dd of=/dev/sda1
Hier gunzip
ist der umgekehrte Befehl von gzip. -c
bewirkt, dass die Ausgabe in die Standardausgabe geschrieben wird, die die Pipe zum dd
Befehl ist. Da if
in weggelassen wird dd
, wird die Eingabe von der „Standardeingabe“ gelesen, was die Ausgabe von ist gunzip
.
Lesen aus einem Bild ohne es wiederherzustellen
Unkomprimierte Images können gemountet werden, so dass Sie von ihnen lesen können. Sollten Sie Ihre Partitionsimages komprimiert haben, dekomprimieren Sie diese zuerst ( disk.img.gz
wird entfernt, disk.img
wird erstellt. Achten Sie darauf, dass Sie genügend Platz haben!):
gunzip disk.img.gz
Alternativ können Sie ein Bild dekomprimieren, ohne das Bild selbst zu verändern:
gunzip -c disk.img.gz > disk.img
Legen Sie nun ein Verzeichnis an, in dem die Platte gemountet werden kann und mounten Sie das Image schreibgeschützt ( ro
):
sudo mkdir /mnt/wind
sudo mount -o ro disk.img /mnt/wind
Sie können Ihre Dateien jetzt in anzeigen /mnt/wind
. Wenn Sie fertig sind, hängen Sie es aus und entfernen Sie den veralteten Einhängepunkt:
sudo umount /mnt/wind
sudo rmdir /mnt/wind
Geringere Größe, mehr CPU-Auslastung, längere Sicherungs- und Wiederherstellungsdauer
Wenn Zeit kein Problem ist und Sie nicht viel Speicherplatz haben, können Sie das bzip2
Komprimierungsformat verwenden. Ersetzen Sie oben einfach gzip
durch . Es ist üblich, die Erweiterung für bzip2-komprimierte Dateien zu verwenden, also tun Sie das.bzip2
.bz2
Antwort2
Möchten Sie eine Festplatte auf eine andere klonen? Dafür gibt es mehrere Möglichkeiten. Ich bevorzuge im Allgemeinen den Befehl dd. Bitte beachten Sie, dass Sie zur Verwendung dieses Befehls Sudo-Zugriff benötigen.
So klonen Sie Festplatte 1 auf Festplatte 2. Beachten Sie, dass Festplatte 2 größer sein muss als Festplatte 1. Wenn Ihre Quellfestplatte sda und die Zielfestplatte sdb ist, können Sie mit dem folgenden Befehl den gesamten Inhalt von sda auf sdb kopieren.
dd if=/dev/sda of=/dev/sdb
Um die gesamte Festplatte 1 in ein Image zu klonen, verwenden Sie den folgenden Befehl. Beachten Sie, dass ~/disk1.img auf einer anderen Festplatte liegen sollte
dd if=/dev/sda of=~/disk1.img
Um eine einzelne Partition in ein Image zu klonen, verwenden Sie den folgenden Befehl. Beachten Sie, dass sich die Image-Datei nicht auf derselben Partition befinden darf.
dd if=/dev/sda1 of=~/drive1.img
Um das Bild wiederherzustellen, verwenden Sie den folgenden Befehl.
dd if=drive1.img of=/dev/sda1 - For Partition dd if=disk1.img of=/dev/sda - For whole hard disk
Sie können auch Speicherplatz sparen, indem Sie die Bilddatei komprimieren.
gzip disk1.img - This will generate disk1.img.gz bzip2 disk1.img - This will generate disk1.img.bz2