libvirtからのみスナップショットを削除し、qcow2に保存します。

libvirtからのみスナップショットを削除し、qcow2に保存します。

次のコマンドを実行しました。

-- 12:18:40 sudo virsh snapshot-delete Windows-10-128GB 2022-04-12-Pre-Activation
Domain snapshot 2022-04-12-Pre-Activation deleted
                                                                                                                                                                                                                                                  66ms

-- 12:28:20 sudo virsh snapshot-list Windows-10-128GB
 Name                         Creation Time               State
-------------------------------------------------------------------
 2022-04-12-Post-Activation   2022-04-12 21:54:19 +0200   shutoff
                                                                                                                                                                                                                                                  58ms


-- 12:28:24 qemu-img snapshot -l ~/kvm-images/Windows-10-128GB.qcow2
Snapshot list:
ID        TAG               VM SIZE                DATE     VM CLOCK     ICOUNT
1         2022-04-12-Pre-Activation      0 B 2022-04-12 21:19:39 00:00:00.000
2         2022-04-12-Post-Activation      0 B 2022-04-12 21:54:19 00:00:00.000

virsh snapshot-deleteこれにより、スナップショットはlibvirtの内部データストアからのみ削除され、qcow2ファイルには影響しないと考えられます。

sudo virsh undefine Windows-10-128GBそのため、この方法をすべて削除し、.dllを介してlibvirtから仮想マシンを削除しました。

これらすべてを実行する前に、スナップショットと仮想マシンのxml定義をエクスポートしました。

sudo virsh dumpxml Windows-10-128GB > 2023-09-10---Windows-10-128GB.xml
sudo virsh snapshot-dumpxml Windows-10-128GB 2022-04-12-Pre-Activation > 2023-09-10---Windows-10--128GB---2022-04-12-Pre-Activation.xml
sudo virsh snapshot-dumpxml Windows-10-128GB 2022-04-12-Post-Activation > 2023-09-10---Windows-10-128GB---2022-04-12-Post-Activation.xml

ただし、もう一度発行すると、qemu-img snapshot -l ~/kvm-images/Windows-10-128GB.qcow2そのファイルのスナップショットは表示されなくなります。しかも寸法も多様です。

48G -rw-------  1 user user 156G Sep 10 12:52 Windows-10-128GB.qcow2
to
31G -rw-------  1 user user 156G Sep 10 12:52 Windows-10-128GB.qcow2

これは、スナップショットが欠落していることを示すようです。

最初にqcow2ファイルからデータが削除されなかったのはなぜですか?後でvirsh snapshot-delete参照できるようにlibvirtからスナップショットを削除しますが、qcow2ファイルに保持してvirsh undefineVMと未使用のqcow2ファイルをいくつかのコールドストレージに移動する方法は何ですか? ?

virsh undefine Windows-10-128GB以下を投げると、当初はスナップショットを削除するように求められます。

error: Failed to undefine domain 'Windows-10-128GB'
error: Requested operation is not valid: cannot delete inactive domain with 2 snapshots

snapshot-dumpxmlのqcow2ファイルパスが存在しないファイルを指すことを追加する必要があります。sourceこれは、ファイルを移動し、VMのxmlが新しい場所を指すように調整したためです。これがスナップショットが削除されない理由ですか?その後、エクスポートされたsnapshot-dumpxmlを正しい場所を指すように変更し、それを使用してスナップsudo virsh snapshot-create --redefine Windows-10-128GB 2023-09-10---Windows-10-128GB---2022-04-12-Pre-Activation---corrected.xmlショットをlibvirtに再統合しました。おそらく、これらの修正によってvirshqcow2ファイルからその内容が削除される可能性がありますか?

ベストアンサー1

おすすめ記事