为什么通过“qemu-img resize --shrink”调整图像大小后.qcow2图像变大(+1920000字节)?

为什么通过“qemu-img resize --shrink”调整图像大小后.qcow2图像变大(+1920000字节)?

.qcow2我为我的虚拟机创建了 20 GiB映像。接下来我在上面安装了 Ubuntu 20.04。系统使用 ~8 GiB,因此我决定使用以下命令将映像缩小到 10 GiB:

# qemu-img resize --shrink ubuntu20.04.qcow2 10241M

10241M的值是使用收缩的分区的最后一个扇区计算出来的gparted(使用虚拟机内的Ubuntu live系统)。最后一个扇区是20973567((20973567+1)×512)/1024/1024 = 10241 MiB。

该命令的结果是qemu-img resize --shrink我得到了以下图像:

# ls -al ubuntu20.04.qcow2
    -rw------- 1 root root 10740432896 2020-08-04 20:26:46 ubuntu20.04.qcow2

这里的大小 ( 10740432896) 是 10242.875 MiB,它比虚拟大小更大(+1920000 字节),可以通过以下方式检查:

# qemu-img info ubuntu20.04.qcow2

image: ubuntu20.04.qcow2
file format: qcow2
virtual size: 10 GiB (10738466816 bytes)
disk size: 9.19 GiB
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: true
    refcount bits: 16
    corrupt: false

所以这里 10738466816 字节正好是 10241 MiB。

那么这1920000字节从哪里来呢?

相关内容