Como o Vagrant realiza tamanhos de arquivos tão pequenos?

4

Eu criei um arquivo de imagem base do Vagrant para o Ubuntu Linux Precise Pangolin 32-bit com o seguinte comando:

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

Este arquivo precise32.box é colocado sob C:\Users\MyUserNameHere\.vagrant.d\boxes\precise32 cujo conteúdo inclui um subdiretório chamado virtualbox contendo, entre outras coisas, um arquivo chamado box.ovf medindo 14KB e um arquivo chamado box-disk1.vmdk medindo apenas 288.318KB.

Por outro lado, também instalei um sistema Ubuntu Linux Precise Pangolin de 32 bits Oracle VirtualBox usando 12 GB de armazenamento alocado dinamicamente e exportou a imagem do disco para um arquivo .ova . Este arquivo .ova mede 1,63 GB.

Estou tendo dificuldades para descobrir por que um arquivo é da ordem de alguns KB, enquanto o .ova é seis vezes maior. Alguém tem alguma ideia? Por que estou vendo uma diferença tão grande entre os tamanhos de arquivo exportados do arquivo .ova e o arquivo .vmdk gerenciado pelo Vagrant?

    
por John Sonderson 20.11.2013 / 16:09

1 resposta

3

Aqui está o motivo, eu finalmente descobri.

Os arquivos em C:\Users\MyUserNameHere.vagrant.d\boxes\precise32 são apenas arquivos básicos sobre os quais sistemas reais são construídos. O Real instância da caixa precisa32 é então colocada sob um diretório como:

C:\Users\MyUserName\VirtualBox VMs\name_of_the_directory_containing_the_Vagrantfile_default_1384903788

Que é criado quando o comando vagrant up é emitido a partir desse diretório contendo o Vagrantfile. No meu caso, o arquivo .vmdk colocado aqui é 1.03GB o que faz mais sentido.

    
por 20.11.2013 / 16:18