VirtualBox压缩虚拟硬盘
Virtralbox使用一个Vdi文件来为虚拟机提供一个虚拟硬盘,在使用过程中,这个文件增长比实际使用要多,比如在虚拟机中,操作系统连带其他文件可能实际只占有2G空间,但到宿主机中,这个虚拟硬盘文件可能会有5G,而且最关键是即使虚拟机中删除了文件,也不会体现到VDI文件中,也就是说这个文件不会自己变小,只会越来越大,如果你有很多虚机,或者频繁的安装和卸载软件,这个问题就比较大了,所以virtual
Virtralbox使用一个Vdi文件来为虚拟机提供一个虚拟硬盘,在使用过程中,这个文件增长比实际使用要多,比如在虚拟机中,操作系统连带其他文件可能实际只占有2G空间,但到宿主机中,这个虚拟硬盘文件可能会有5G,而且最关键是即使虚拟机中删除了文件,也不会体现到VDI文件中,也就是说这个文件不会自己变小,只会越来越大,如果你有很多虚机,或者频繁的安装和卸载软件,这个问题就比较大了,所以virtualbox提供了压缩vdi文件的方法,不幸的是这个方法不是集成到图形管理界面中,而且不能一步完成,需要下面两个步骤。(最好在开始前把虚拟硬盘VDI文件备份一下。)
1、在客户机(虚拟机)中为压缩准备磁盘
对于windows系统,我们先在需要压缩的磁盘或分区中删除不要和临时的文件,做好磁盘整理。
然后我们使用一个 sdelete 工具来准备磁盘分区(sdelete是微软的安全删除工具,可以从网上搜索下载),下载后在dos命令窗口中输入:
sdelete -c (将sdetele复制到需要处理的分区,-c 表示使用0填充删除文件的数据库,虚拟磁盘工具可以处理并真正压缩虚拟硬盘文件)
对Linux系统,需要下载安装一个zerofree工具,需要进入init.1模式,使用下列命令:
下载安装zerofree命令:
sudo apt-get install zerofree
进入init.1模式命令:
sudo init 1
以只读模式重新挂载你想压缩的硬盘命令:
mount -n -o remount,ro -t ext4 /dev/sdb1 /var
压缩已挂载的硬盘命令:
zerofree /dev/sdb1
处理完成后立刻关闭虚拟机。
2. 在宿主机中压缩虚拟硬盘文件,需要用到vboxmanage命令
在终端中使用下列命令可以压缩VDI文件
vboxmanage modifyhd /VDIs/winxp.vdi (这里我们的VDI文件在/VDIs中,一定要完整路径)
或者好像这样也行:
vboxmanage clonehd /VDIs/winxp.vdi /VDI/winxp1.vdi (这种方式会复制一个vdi文件,但问题是需要这个文件会使用一个新的GUID序号,而且需要重新挂载
更多推荐
所有评论(0)