小さな差分Virtualboxハードドライブを維持する方法


8

Dropbox(人気のクラウドツール)同期を使用して、複数のコンピューターでvirtualboxハードドライブを使用しようとしています。2台のマシンが同じドライブを同時に開くことはないと思います。

データ転送を減らすために、ハードドライブ全体を同期せずに、少量の「ドキュメント」のみを保存するハードドライブの差分のみを使用したいと思います(Dropbox差分同期が非常に効果的であるとは信じていません) 。このVirtualBoxの公式ドキュメントを使用し、次のトリックを作成しました。

  • トリックで差動ドライブを構築します。
    • ドライブをマルチアタッチにする(上記のドキュメントを参照)
    • ゲストのドライブに簡単な変更を加えると、diffファイルが作成されます
  • ベースドライブを(VBox Media Managerの[File]> [Virtual Media Manager]を使用して)「通常」モードに復元します(複数のマシンに接続できるようにするには、これを必要とします)
  • マシンからメインドライブを取り外し、代わりにdiffをアタッチします
    • これは、新しいマシンに接続するときに追加のトリックが必要です。接続してからメインを切り離してから、diffを接続しないと、VirtualBoxがディスクGUIDを認識しません。

このトリックは仕事をします:私は差分ディスクでのみ作業するので、ベースは決して変更されず、したがってネットワーク上で同期されることはありません。ただし、悪い点は、格納されているデータの量がほとんど増加していなくても、ゲストOSがファイルをフラグメント化して移動する方法が原因で、差分ドライブvdi(ホスト上の仮想ドライブストレージファイル)がホストで使用する領域増加していることです。 。このようにして、増え続ける差分ハードディスクを同期し始め、差分を持つことの利点を失っています。

問題は、同期を小さく保つために、差分vdiを定期的に「マージ」または「デフラグ」する方法です。このマージを行うたびに、メインのvdiの完全な同期を作成する余裕があります(私は望んでいません)。しかし、私が考えた唯一の方法は、同じプロセスを使用してdiff vdiを再作成し、何らかのバックアップを介してそのディスク上のファイルを復元することです。あまり便利ではありません。誰かがより良いアイデアを持っていますか?

もちろん、共有ディレクトリ(ホストとゲストの間)でのみ作業する別の方法もありますが、追加の構成(ゲスト上のシンボリックリンクの数が多い)が必要であり、ホストユーザーが混乱しないようにしたいゲストファイル。

私は十分にはっきりしていますか?


いくつかの追加情報:私のゲストシステムは、〜5GiBの不変部分と〜500MiBの「ドキュメント」部分を持つ最小限のwinXPです。ホストはいくつかのWindowsとLinuxマシンであり、一部は不安定な接続の小さなディスクラップトップです
PPC

「DropBoxの差分同期が非常に効果的であるとは信用しないでください」とあなたは言う。実際にテストしましたか?
Colin 't Hart

@ Colin'tHart:あまり徹底的なテストではありませんが、本番環境で仮想ドライブに小さな変更(いくつかの新しいファイルといくつかの古いファイルの変更)を行い、同期によりファイル全体をアップロードするのにおよそ時間がかかりました。たぶん、Dropboxのせいではない(予想よりも大きな変更を行うのはNTFSの可能性がある)が、結果は次のとおりである:時間がかかる
PPC

回答:


3

VBoxManage modifyhd --compactは、適切なツール(マニュアルを参照)を使用してゼロ設定したブロックを切り取ります。ドキュメント用に別のディスクを接続すること(おそらくライトスルー)がニーズに適しているかどうかはわかりません。


調査することをお勧めします。そのような変更はおそらくドロップボックスの「インテリジェントな同期」アルゴリズムを大いに台無しにするので、それが実際に帯域幅を維持するかどうかは不明です(diffで機能する場合)。私はそのような変更を可能な限り体系的に行うようにすべきです(ユーザーがVMを閉じる​​たびに?)。とにかく素晴らしいアイデア。
PPC

0

すべてのホストOSがMac OS 10.5以降の場合、スパースバンドルメカニズムを使用できます。これは、Time Machineやrsyncなどのツールを使用した増分同期/バックアップに適しています。http//en.wikipedia.org/wiki/Sparse_image# Sparse_Bundle

私はそれを3 GBボリュームのDropbox上で使用しており、うまく動作します。もちろん、VMディスクは少なくとも10〜20 GBなので、最初の同期は非常に遅くなります。ただし、DropboxとLAN同期を使用するとスピードアップできます。

また、あなたが言ったように、特定の瞬間に一度だけマウントし、VMが停止/スタンバイ状態になった後に同期できるように注意する必要があります。


ソリューションをテストできませんでした。私のホストはwin7とUbuntu Natty :(
PPC
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.