Como manter um pequeno disco rígido do Virtualbox diferencial

8

Estou tentando usar um disco rígido de caixa virtual em vários computadores usando sincronização de dropbox (uma ferramenta de nuvem popular). Presumo que não há duas máquinas que abrirão a mesma unidade ao mesmo tempo.

Para reduzir as transferências de dados, eu gostaria de usar apenas um diferencial do meu disco rígido que armazena apenas um pequeno volume de "documentos", não sincronizando todo o disco rígido (não confio que a sincronização diferencial do Dropbox seja muito efetivo). Usando esta documentação oficial do VirtualBox , fiz o seguinte truque que só parcialmente me satisfaz.

  • Crie uma unidade diferencial com um truque:
    • Faça o disco multiattach (veja a documentação acima)
    • Faça uma alteração simples na unidade do guest, que criará um arquivo diff
  • Restaurar (usando o VBox Media Manager, File > Gerenciador de Mídia Virtual) a unidade básica para o modo "normal" (eu preciso disso para poder anexá-la a várias máquinas)
  • Desanexe a unidade principal da máquina e, em vez disso, anexe a diferença
    • Isso precisa de um truque extra ao se conectar a uma nova máquina: anexar e, em seguida, desanexar a principal e, em seguida, anexar o diff; caso contrário, o VirtualBox não reconhecerá o GUID do disco

Esse truque faz o trabalho: como eu trabalho apenas com o disco diff, a base nunca é modificada e, portanto, nunca sincronizada pela rede. A parte ruim é que, mesmo se muito pouco crescimento em quantidade de dados armazenados , a unidade diff está crescendo em espaço o vdi (arquivo de armazenamento da unidade virtual em o host) assume o host por causa de como o sistema operacional guest fragmenta e move arquivos. E assim estou começando a sincronizar um disco rígido cada vez maior, perdendo as vantagens de ter um diff.

O problema é: Eu quero é uma maneira de 'mesclar' ou 'desfragmentar mudanças' regularmente no diff vdi para manter a sincronização pequena. Eu posso pagar (apesar de não querer) fazer uma sincronização completa do vdi principal toda vez que fizer essa mesclagem. Mas a única maneira que eu tenho é recriar um diff vdi usando o mesmo processo e restaurar os arquivos nesse disco através de algum tipo de backup. Não é muito útil. Alguém tem uma ideia melhor?

É claro que existe outra maneira de trabalhar somente em um diretório compartilhado (entre o host e o guest), mas isso exigirá configuração extra (muitos links simbólicos no guest) e eu não quero que os usuários hospedem bagunçar arquivos de convidado.

Eu tenho sido claro o suficiente?

    
por PPC 03.04.2012 / 18:03

2 respostas

3

VBoxManage modifyhd --compact cortará todos os blocos que você tiver zerado com um ferramenta apropriada (ver manual). Não tenho certeza se a anexação de um disco separado para os documentos (talvez write-through ) seria melhor para suas necessidades .

    
por 05.11.2012 / 01:36
0

Se todo o seu sistema operacional host for o Mac OS 10.5+, você poderá usar o mecanismo Pacote Esparso, que é adequado para sincronização / backup incremental com ferramentas como o Time Machine ou o rsync: link

Estou usando o Dropbox com um volume de 3 GB e funciona bem. Naturalmente, seu disco da VM provavelmente tem pelo menos 10 a 20 GB, portanto, a primeira sincronização será muito lenta. Ele pode ser acelerado pelo Dropbox com a sincronização da LAN.

Além disso, você precisa tomar cuidado para montá-lo apenas uma vez em um determinado momento (como você disse) e permitir a sincronização após o estado de parada / espera da VM.

    
por 13.05.2012 / 16:09