vbox虚拟机导出减少体积:压缩VDI文件

December 17, 2023
测试
测试
测试
测试
1 分钟阅读

前言部分:

网上找了一些virtualBox虚拟机压缩方法,做了测试。虚拟机导出体积有了明显减少。

参考文档:https://blog.csdn.net/mr__bai/article/details/129147223

里面有一些注意事项,包括我在实践时遇到的一些问题,在这里统一做个汇总。

体积减少原理:

VirtualBox虚拟机会在使用时动态分配磁盘空间,空间分配在vdi文件中。使用时间越长,vdi磁盘文件越大,导致导出虚拟机时占用空间变大。

即使在虚拟机中删除文件,vdi磁盘文件也不会缩小。因为已经分配的空间是不会自动回收的,所以需要使用工具进行压缩vdi文件。压缩时,会将磁盘中标记为0的空间压缩,所以需要对空闲的磁盘使用dd工具批量填充为0后删除,能够带来压缩率的提升。

具体操作:

1、删除虚拟机快照。

2、使用dd命令填充磁盘后,删除文件。

cd /

sudo dd if=/dev/zero of=/free

sudo rm -rf /free

3、使用VBoxManage工具进行压缩。

使用cmd命令行进入vbox安装目录,默认vbox安装路径为C:\Program Files\Oracle\VirtualBox

执行工具进行压缩

# 我的vdi文件位置,D:\Tools\centos7-disk001.vdi

VBoxManage modifyhd D:\Tools\centos7-disk001.vdi --compact

执行命令时,vdi路径中不能包含空格,如果包含空格,请将C:\Program Files\Oracle\VirtualBox目录下的所有文件拷贝到vdi文件的子目录中。

然后在新目录中执行命令即可。

VBoxManage modifyhd ..\centos7-disk001.vdi --compact

此时虚拟机空间即被压缩。

继续阅读

更多来自我们博客的帖子

如何安装 BuddyPress
由 测试 December 17, 2023
经过差不多一年的开发,BuddyPress 这个基于 WordPress Mu 的 SNS 插件正式版终于发布了。BuddyPress...
阅读更多
Filter如何工作
由 测试 December 17, 2023
在 web.xml...
阅读更多
如何理解CGAffineTransform
由 测试 December 17, 2023
CGAffineTransform A structure for holding an affine transformation matrix. ...
阅读更多