0

我很难理解我的 qcow2 映像的磁盘大小。我有一个 CentOS 6 机器正在运行:

# virsh version
Compiled against library: libvirt 0.10.2
Using library: libvirt 0.10.2
Using API: QEMU 0.10.2
Running hypervisor: QEMU 0.12.1

我在那里运行了几个客人,客人没有太多活动我注意到我的一位客人的备份(我使用 cp 手动完成文件复制,没有基于 qcow2 的快照)增长了 4 倍。其他客人似乎表现正常并且备份大小正常增长。

当我登录到那个客人时,我看到了

# df -h
Filesystem                    Size  Used Avail Use% Mounted on
udev                          2.0G     0  2.0G   0% /dev
tmpfs                         396M  5.5M  391M   2% /run
/dev/mapper/debian9--vg-root  188G  2.7G  176G   2% /
tmpfs                         2.0G     0  2.0G   0% /dev/shm
tmpfs                         5.0M  4.0K  5.0M   1% /run/lock
tmpfs                         2.0G     0  2.0G   0% /sys/fs/cgroup
/dev/vda1                     236M   62M  162M  28% /boot
tmpfs                          89M     0   89M   0% /run/user/0

但 qcow2 文件已从 5GB 增长到

# du -h /backups/vm01/20180111/vm01.qcow2 
19G /backups/vm01/20180111/vm01.qcow2

我发现qcow2 磁盘文件的大小快速增长,并尝试“qemu-img 转换”备份文件,但没有解决问题。当我执行 dd if=/dev/zero of=vm01.qcow2 时,它一直运行到我用完该卷组上的空间(超过 19G )。我期待 qcow2 文件随着内部文件系统的大小而或多或少地增长。任何提示我可能做错了什么?

问候, 帕维尔

4

1 回答 1

0

除非您为主机文件系统、QEMU 和来宾操作系统启用了 TRIM/DISCARD,否则 qcow2 文件的大小将永远不会缩小。所以最有可能的解释是来宾操作系统中的某些东西在短时间内创建了一个非常大的文件,然后再次将其删除。qcow2 图像会增长到容纳这个文件,但是一旦文件被删除,qcow2 图像不会再次缩小,没有 TRIM/DISCARD 可用。

于 2018-01-12T18:43:18.177 回答