如何减少 KVM qcow2 磁盘大小?

如何减少 KVM qcow2 磁盘大小?

当我在我的客户 Debian 中启动时,它显示其大小是 2.7G。

df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            718M     0  718M   0% /dev
tmpfs           147M  6.2M  141M   5% /run
/dev/vda1        98G  2.7G   91G   3% /
tmpfs           734M  4.0K  734M   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
none             10M  4.0K   10M   1% /run/msgcollector
tmpfs           147M  4.0K  147M   1% /run/user/1000

这是一块稀疏的 100GB 磁盘。在我的主机操作系统中,我将其视为 4.5G。

sudo du -sh generic.qcow2
4.5G   generic.qcow2

我尝试从 Live CD 启动并运行

zerofree guestdisk

然后我尝试

sudo virsh-sparsify --in-place generic.qcow2

但还是4.5G

答案1

尝试这个

qemu-img 转换 -f qcow2 -O qcow2 -c orig.qcow2 new.qcow2

-c = 压缩

答案2

Qemu-convert 在 CLI 中运行良好,但您无法获得任何快照。

最简单的方法是从 gui(virt-manager)克隆虚拟机 - 它会自动压缩 qcow2 - 然后删除原始版本。

答案3

该文件系统具有 100 GB 卷的元数据。大约等于整个磁盘的大小减去 df 报告的总数Size,或稀疏文件的实际大小减去Used。无论哪种方式,大约为 2 GB。

为了减少它,请创建一个新的较小的文件系统,对新卷执行基于文件的备份还原,并删除较大的磁盘。

或者,作为此实例上的唯一磁盘,在较小的磁盘上创建新的操作系统实例/,然后仅恢复数据和自定义可能会更快。

相关内容