Wie erstelle ich einen Schnappschuss einer physischen Festplatte?

7

Ich habe Windows 7 auf einer meiner Festplatten installiert. Ich möchte dieses Windows-System in meiner Xen HVM starten, aber ich möchte nicht, dass die Änderungen dauerhaft sind. Daher möchte ich einen Snapshot meiner Windows 7-Partition erstellen. Ich habe bei LVM nachgefragt, aber es scheint, dass LVM nur einen Snapshot für LV erstellen kann, den es erstellt hat. Ich suche nach einer allgemeineren Schnappschussmethode.

David S.
quelle

Antworten:

4

Mit dem dmsetupBefehl der unteren Ebene können Sie den Kernel-Geräte-Mapper anweisen, einen Snapshot zu erstellen. Wenn Sie LVM neben der Windows-Partition anderweitig verwenden, erstellen Sie ein logisches Volume, das als Sicherungsspeicher für den Snapshot verwendet werden soll.

lvcreate -n store -L 10g vg
echo 0 `blockdev --getsz /dev/sda1` snapshot-origin /dev/sda1 | dmsetup create origin
echo 0 `blockdev --getsz /dev/sda1` snapshot /dev/mapper/origin /dev/mapper/vg-store N 128 | dmsetup create snap

Jetzt können Sie xen auf / dev / mapper / snap anstelle von / dev / sda1 verweisen. Alle vorgenommenen Änderungen werden verworfen, wenn Sie fertig sind und dmsetup remove verwenden, um die Snap- und Ursprungsgeräte zu entfernen, und lvremove, um das Speichervolumen zu entfernen.

Wenn Sie LVM nicht verwenden, benötigen Sie stattdessen eine andere Partition oder ein anderes Schleifengerät als Sicherungsspeicher.

psusi
quelle
Vielen Dank. Ich habe versucht, über dmsetup snapshot zu googeln, aber ich kann nur Artikel finden, die allgemein über dmsetup sprechen. Wissen Sie zufällig, wo ich eine detaillierte Beschreibung der Snapshot-Funktion von dmsetup finden kann?
David S.
@ davidshen84, Im Kernel-Quellbaum unter Documentation / device-mapper / snapshot.txt.
Psusi
Gute Antwort, obwohl eine reine dmsetup-basierte Lösung wahrscheinlich besser gewesen wäre. Das OP hat kein LVM.
Peter
@peterh, ich erwähnte, dass Sie, wenn Sie kein LVM haben, stattdessen ein Schleifengerät oder eine physische Partition verwenden können.
Psusi
2

LiveCDs neigen dazu, so etwas zu tun. Sie haben ein schreibgeschütztes Image von der CD-ROM und überlagern es dann mit einer RAM-Disk.

Das fragliche Dateisystem ist UnionFS . Eine Alternative wäre AuFS, aber beide sollten einfach sein.

Ich würde zuerst in einer VM daran basteln, bevor ich es gegen etwas ausführe, das Ihnen wichtig ist.

Jodie C.
quelle
1
UnionFS und AuFS arbeiten beide mit der Implementierung eines Copy-on-Write. Außerdem funktionieren sie nicht mit Blockgeräten, sondern nur mit Dateisystemen.
Patrick
Ich habe beide überprüft, keine ist anwendbar. KVM unterstützt Snapshot selbst. Ich wünschte, Xen hätte eine ähnliche Funktion.
David S.