Vagrant 如何实现如此小的盒子文件大小?

Vagrant 如何实现如此小的盒子文件大小?

我使用以下命令为 Ubuntu Linux Precise Pangolin 32 位创建了一个 Vagrant 基础映像文件:

vagrant box add precise32 http://files.vagrantup.com/precise32.box

然后将该precise32.box文件放置在C:\Users\MyUserNameHere\.vagrant.d\boxes\precise32 其内容包括一个名为 virtualbox 的子目录下,该子目录包含一个名为的文件,box.ovf大小为 14KB,以及一个名为的文件,box-disk1.vmdk大小仅为 288.318KB。

另一方面,我还在 Oracle VirtualBox 中使用 12GB 动态分配存储安装了 Ubuntu Linux Precise Pangolin 32 位系统,并将磁盘映像导出到一个.ova文件中。该.ova文件的大小为 1.63GB。

我很难弄清楚为什么一个文件只有几 KB,而另一个文件.ova却大六倍以上。有人有什么想法吗?为什么我看到导出文件.ova.vmdkVagrant 管理的文件大小之间有如此大的差异?

答案1

原因如下,我终于明白了。

下面的文件C:\Users\MyUserNameHere.vagrant.d\boxes\precise32 只是实际系统构建的基础文件。precision32 框的实际实例随后放置在以下目录下:

C:\Users\MyUserName\VirtualBox VMs\name_of_the_directory_containing_the_Vagrantfile_default_1384903788

vagrant up一旦从包含 Vagrantfile 的目录发出命令,就会创建该文件。在我的例子中.vmdk,此处放置的文件为 1.03GB,这更有意义。

相关内容