解决kvm虚拟机qcow2格式磁盘文件比实际空间占用大的问题 | 转

2019年9月23日11:06:39 发表评论 2,280 views

在基于qcow2格式的虚拟机中进行删除文件操作后,物理磁盘文件并不会变小。可以用以下方法对磁盘文件瘦身。

linux客户机

1、使用dd命令将客户机未使用的磁盘空间用0填满

$dd if=/dev/zero of=~/junk
dd: writing to `/home/***/junk': No space left on device

2、然后

$rm junk

3、关闭客户机

4、转换磁盘镜像文件

$qemu-img convert -O qcow2 centos7.qcow2 centos7_new.qcow2

转换完成后可以看到centos7_new.qcow2占用的KVM主机存储空间与客户机使用的磁盘空间基本是一致的。然后用新的磁盘镜像文件centos7_new.qcow2启动客户机即可。

windows客户机

1、删除不需要的文件,清理系统垃圾,然后整理磁盘碎片

2、下载SDelete,借助sdelete用0来填充未使用硬盘空间
查看sdelete帮助

C:\>sdelete
SDelete - Secure Delete v1.6
Copyright (C) 1999-2010 Mark Russinovich
Sysinternals - www.sysinternals.com

usage: sdelete.exe [-p passes] [-s] [-q] ...
sdelete.exe [-p passes] [-z|-c] [drive letter] ...
-a Remove Read-Only attribute
-c Clean free space
-p passes Specifies number of overwrite passes (default is 1)
-q Don't print errors (Quiet)
-s or -r Recurse subdirectories
-z Zero free space (good for virtual disk optimization)

用0填充C分区空闲区域
C:\>sdelete -z c

3、关闭客户机

4、最后在KVM主机上转换qcow2磁盘镜像文件

$qemu-img convert -O qcow2 windows.qcow2 windows_new.qcow2

转换完成后可以看到windows_new.qcow2占用的KVM主机存储空间与客户机使用的磁盘空间基本是一致的。然后用新的磁盘镜像文件windows_new.qcow2启动客户机即可。

本文转载自:http://www.viper.im/archives/qcow2-disk-reduce.html

weinxin
我的微信
如果有技术上的问题可以扫一扫我的微信
版权声明
1. 本网站名称:Leon的博客
2. 本站永久网址:https://blog.leonshadow.cn
3. 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长QQ632113590进行删除处理。
4. 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5. 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6. 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
liyang