Comment entretenir un petit disque dur Virtualbox différentiel

8

J'essaie d'utiliser un disque dur Virtualbox sur plusieurs ordinateurs en utilisant la synchronisation Dropbox (un outil cloud populaire). Je suppose que deux machines n'ouvriront pas le même lecteur en même temps.

Pour réduire les transferts de données, j'aimerais utiliser uniquement un différentiel de mon disque dur qui ne stockera qu'un petit volume de "documents", ne synchronisant pas l'ensemble du disque dur (je ne fais pas confiance à la synchronisation différentielle Dropbox pour être très efficace) . En utilisant cette documentation officielle de VirtualBox , j'ai fait l'astuce suivante qui ne me satisfait qu'en partie.

  • Construisez un entraînement différentiel avec une astuce:
    • Rendre le lecteur multi-attaché (voir la documentation ci-dessus)
    • Apportez une modification simple au lecteur sur l'invité, ce qui créera un fichier diff
  • Restaurer (en utilisant la VBox Media Manager, Fichier> Virtual Media Manager) le lecteur de base en mode "normal" (j'en ai besoin pour pouvoir le connecter à plusieurs machines)
  • Détachez le lecteur principal de la machine et attachez plutôt le diff
    • Cela nécessite une astuce supplémentaire lors de la connexion à une nouvelle machine: attachez puis détachez le principal, puis attachez le diff, sinon VirtualBox ne reconnaîtra pas le GUID du disque

Cette astuce fait l'affaire: comme je ne travaille qu'avec le disque diff, la base n'est jamais modifiée et donc jamais synchronisée sur le réseau. La mauvaise partie est cependant que, même si très peu de plus en plus quantité de données stockées , le lecteur diff est de plus en plus dans l' espace le vdi (fichier de stockage de disque virtuel sur l'hôte) prend l'hôte en raison de la façon dont les fragments OS invité et déplace les fichiers . Et donc je commence à synchroniser un disque dur de diff toujours croissant, perdant les avantages d'avoir un diff.

Le problème est: je veux est un moyen de régulièrement «fusionner» ou «défragmenter les changements» sur le diff vdi pour garder la synchronisation petite. Je peux me permettre (bien que je ne le veuille pas) de faire une synchronisation complète du vdi principal chaque fois que je fais cette fusion. Mais la seule façon dont j'ai pensé est de recréer un diff vdi en utilisant le même processus et de restaurer les fichiers sur ce disque via une sorte de sauvegarde. Pas très pratique. Quelqu'un a une meilleure idée?

Bien sûr, il existe l'autre façon de travailler uniquement sur un répertoire partagé (entre l'hôte et l'invité), mais cela nécessitera une configuration supplémentaire (beaucoup de liens symboliques sur l'invité) et je ne veux pas que les utilisateurs de l'hôte gâchent fichiers invités.

Ai-je été assez clair?

PPC
la source
Quelques informations supplémentaires: Mon système invité est un winXP minimal avec une partie immuable de ~ 5GiB et une partie 'documents' de ~ 500MiB. Les hôtes sont plusieurs fenêtres et machines Linux, certains sont de petits ordinateurs portables à disque avec une connexion erratique
PPC
Vous dites que vous "ne faites pas confiance à la synchronisation différentielle DropBox pour être très efficace". L'avez-vous testé?
Colin 't Hart
@ Colin'tHart: Pas un test très approfondi, mais j'ai fait de petits changements sur le lecteur virtuel (quelques nouveaux fichiers et modifié quelques anciens) sur la production, et la synchronisation a pris environ le temps de télécharger le fichier entier. Peut-être que Dropbox n'est pas à blâmer (il pourrait s'agir de NTFS qui apporte des changements plus importants que prévu), mais le résultat est: cela prend des siècles
PPC

Réponses:

3

VBoxManage modifyhd --compact supprimera tous les blocs que vous avez mis à zéro avec un outil approprié (voir manuel). Je ne sais pas si attacher un disque séparé pour les documents (peut - être par écrit ) serait mieux pour vos besoins.

ignis
la source
Cela semble être une bonne idée d'enquêter. Je ne suis pas sûr qu'il préservera réellement la bande passante (s'il fonctionne sur diff), car un tel changement gâchera probablement beaucoup l'algorithme de "synchronisation intelligente" de la boîte de dépôt. Je devrais essayer de faire un tel changement aussi systématique que possible (à chaque fois qu'un utilisateur ferme sa VM?). Bonne idée quand même.
PPC
0

Si tous vos OS hôtes sont Mac OS 10.5+, vous pouvez utiliser le mécanisme Sparse Bundle, bien adapté à la synchronisation / sauvegarde incrémentielle avec des outils comme Time Machine ou rsync: http://en.wikipedia.org/wiki/Sparse_image# Sparse_Bundle

Je l'utilise sur Dropbox avec un volume de 3 Go, et cela fonctionne bien. Bien sûr, votre disque VM est probablement d'au moins 10-20 Go, donc la première synchronisation sera très lente. Il peut cependant être accéléré par Dropbox avec synchronisation LAN.

De plus, afaik vous devez faire attention à ne le monter qu'une seule fois à un moment donné (comme vous l'avez dit), et à permettre la synchronisation après l'arrêt de la VM / état de veille.

norz
la source
Impossible de tester votre solution, mes hôtes sont win7 et Ubuntu Natty :(
PPC