Linux
KVM 原始圖像是否支持預分配?
我試圖用這個命令創建一個原始圖像:
qemu-img create -f raw -o size=200G,preallocation=metadata file.img
但似乎它的原始圖像不支持預分配。如果是這樣,為什麼此圖表中有原始 + 預分配?
# qemu-img create -f raw -o size=200G,preallocation=full file.img Unknown option 'preallocation' Invalid options for file format 'raw'.
根據本手冊,我沒有看到任何原始圖像的預分配選項。
而且看看這些基準測試可能會很好,似乎任何類型的原始圖像都比 qcow2 具有更好的性能。
而且由於性能問題,我還看到了許多避免直寫記憶體的建議,但我自己沒有對其進行測試。
原始圖像不支持預分配,qcow2 和 qed-images 支持:
preallocation=full
而preallocation=metadata
不是不僅為原始圖像分配元數據,而且還向它寫入零,從而創建一個非稀疏圖像文件。如果您的文件系統支持稀疏文件(例如 ext、xfs、btrfs),則僅用零填充的塊不會物理儲存,這樣可以在開始使用此映像時節省空間。
如果您想在原始圖像上分配所有空間,可以使用以下
dd
命令:dd if=/dev/zero of=file.img bs=1M count=204800
如果您正在努力提高速度,也可以使用
cache=writethrough
例如 libvirt,如果您的物理機器崩潰,這種增強的速度不會失去數據。