如何创建非精简配置的 qcow2 文件?

如何创建非精简配置的 qcow2 文件?

当我执行以下操作时,qcow2 文件小于 200KB。

# qemu-img create -f qcow2 /var/lib/libvirt/images/urb-dat0.qcow2 10G
# du -hsc /var/lib/libvirt/images/urb-dat0.qcow2
196K    /var/lib/libvirt/images/urb-dat0.qcow2

如果我将其连接到 KVM 客户机,fdisk -l

Disk /dev/vdb: 0 MB, 197120 bytes, 385 sectors

问题

如何制作非精简配置的 10GB qcow2 文件?

答案1

您可以使用该preallocation选项。

qemu-img create -o preallocation=full -f qcow2 /var/lib/libvirt/images/urb-dat0.qcow2 10G

参考:https://linux.die.net/man/1/qemu-img

预分配模式(允许值:关闭、元数据、完整)。具有预分配元数据的映像最初较大,但当映像需要增大时可以提高性能。完整预分配还会将零写入整个映像,以便预分配较低层(例如包含映像文件的文件系统)。请注意,完整预分配会写入虚拟磁盘的每个字节,因此对于大型映像可能需要很长时间。

答案2

现有的精简配置 qcow2 文件可以转换为完全分配的文件,如下所示:

qemu-img convert -p -f qcow2 -O qcow2 -S 0 original-file.qcow2 new-file.qcow2

(这不是问题的答案,但可能仍然引起人们的兴趣。)

相关内容