インターネットで検索して読みました。KVMハイパーバイザーはVMファイルをどこに保存しますか?私のアイデアを標準的な方法で実装することはできないと思いますが、まだ実行可能であるか、いくつかのトリック/解決方法を提案できる人がいますか?
WindowsのネイティブVMファイルをKVM(または以下で他のタスクを実行する方法を知っていますが、KVMではない場合は別のVM)にマウントし、それを「サブ」/「デフォルト」ファイルセットとして保存し、プログラムを追加する機能が必要です。 「上部」のすべての追加/変更を別の場所(たとえば、Linuxオーバーレイfs)に保存してファイルシステムを作成します。ティア
これにより、似ていますが、さまざまなクライアントシステムのインストールをよりコンパクトな方法で保存できます。
答え1
書き込み中にコピーディスクイメージを使用して、必要なものを取得できます。
ディスクイメージがあるとしましょうwindows-base.img
。これを「サブ」イメージとして使用し、同じ基本構成で起動する複数の仮想マシンを作成できるように、ここで複数の「親」レプリカを作成しようとしています。
Linuxを使用している場合は、libvirt
次のことができます。
virt-install --disk pool=default,size=40,backing_store=windows-base.img,backing_format=raw ...
このbacking_store
オプションは、指定されたイメージの新しいコピーオンライトレプリカを作成します。最初はコンテンツが同じでスペースをwindows-base.img
効果的に消費しませんが、仮想マシンがディスクブロックを変更するにつれて時間の経過とともに容量が大きくなります。
この記事このプロセスをさらに詳しく見てください。
あなたならどうでしょうか?いいえlibvirt
(たとえば、直接実行する場合)qemu
同じ操作を手動で実行すると、次のqemu-img
ようになります。
qemu-img create -F raw -b windows-base.img -f qcow2 windows-1.qcow2 40g