我使用以下命令为 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
和.vmdk
Vagrant 管理的文件大小之间有如此大的差异?
答案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,这更有意义。