virt-manager/libvirt/KVMで若干の損失が発生しました。
KVM仮想マシン(Windows XP)が正しく実行されています。
仮想マシンは約4GBのファイル(.img)。
今私は非常に簡単なタスクを実行したいと思います。仮想マシンのコピーを作成したいと思います。
私の考えでは「わかりました。4GBファイルをコピーしてXMLをコピーしましょう。」文書。
しかし、libvirt FAQはすべて大文字になっています。「XMLがどこに保存されているか気にしないでください。」
まあ、私は気にしません。しかし、仮想マシンをどのように複製しますか?
この仮想マシンのコピーである新しい仮想マシンを作成したいと思います。
ベストアンサー1
最も便利な方法は次のとおりです。
# virt-clone --connect=qemu://example.com/system -o this-vm -n that-vm --auto-clone
コピーを作成し、this-vm
名前を付け、that-vm
ストレージデバイスのコピーを担当します。詳細に加えて、ここに新しいものはありません。
さらに重要なことは、よくある質問でXMLフィールドの説明を直接編集できないことです。渡すlibvirt。このコマンドで実行される手順を完了するには、virt-clone
次の手順を実行します。
source_vm=vm_name
new_vm=new_vm_name
# You cannot "clone" a running vm, stop it. suspend and destroy
# are also valid options for less graceful cloning
virsh shutdown "$source_vm"
# copy the storage image.
cp /var/lib/libvirt/images/{"$source_vm","$new_vm"}.img
# dump the xml for the original
virsh dumpxml "$source_vm" > "/tmp/$new_vm.xml"
# hardware addresses need to be removed, libvirt will assign
# new addresses automatically
sed -i /uuid/d "/tmp/$new_vm.xml"
sed -i '/mac address/d' "/tmp/$new_vm.xml"
# and actually rename the vm:
#(this also updates the storage path)
sed -i "s/$source_vm/$new_vm/" "/tmp/$new_vm.xml"
# finally, create the new vm
virsh define "/tmp/$new_vm.xml"
virsh start "$source_vm"
virsh start "$new_vm"