VirtualBox で仮想ハードディスクを丸ごとコピーして複製を作る方法
- VirtualBoxで仮想ハードディスクの複製を作成する方法
- VirtualBox – 憩いの場 Wiki > 仮想ディスクの丸ごとコピー
より
- Windows のコマンドプロンプトを開き、VirtualBox のフォルダ (“C:\Program Files\Oracle\VirtualBox\”) に移動。
- VBoxManage.exe clonehd 元ファイル名.vdi 複製ファイル名.vdi
を実行。.vdi のあるフォルダ(パス)は指定しなくてよい。 - 複製した.vdi で仮想マシンを起動: 「新規」作成で既存のハードディスクを選択、リストに出てこないので、さらに選択画面を開いて選択。
または、エクスプローラからのドラッグ&ドロップを併用するなら、
- Windows のコマンドプロンプトを開く。
- エクスプローラで、VBoxManage.exe をコマンドプロンプトにドロップ。
- 半角空白の間に、 clonehd
- エクスプローラでコピー元となる .vdi ファイルをドロップ。
- 半角空白を一つ入れ、コピー先のファイル名を入力。実行。
ということで、フルパスを指定して同様に実行されます。
スナップショット後のコピー
スナップショットをとったあとに上述のコピーを行うと、スナップショットをとる前の(最初の状態の)ハードディスクがコピーされます。スナップショットごとに別のハードディスクとして認識して、別々の UUID が割り振られているからです。任意のスナップショットの状態のハードディスクを得たい場合は、コピーにハードディスク名でなく UUID を使います。
まず、ハードディスクの UUID を調べます。
C:\Program Files\Oracle\VirtualBox>VboxManage list hdds
すると、ずらずらと UUID が表示されます。使いたいスナップショットを探し、その段落の一番上の行の UUID をマウスでコピーします。その UUID をコピー元として貼り付けます。
C:\Program Files\Oracle\VirtualBox>VboxManage clonehd コピー元の長いUUID コピー先ファイル名.vdi
コピーされた HDD はスナップショットのときの状態で新たな HDD になります。そのスナップショットより前のスナップショットには戻れません。戻りたいときは新たな HDD のクローンを作ることになるようです。
(2010.11.17)
余談
ローカルのメインマシンに仮想マシンを作って、そこに WordPress をインストール、テスト環境を作ろうと思ったわけです。
Ubuntu 10.04.1 server をいじっていたら、重要なフォルダ・ファイルが消えてしまったようで、起動できなくなりました。修復するより再インストールのほうが楽そうだったのですが、Ubuntu 10.04 desktop は動く状態なので、それをコピーして使おうという魂胆です。インストールの手間と時間もばかになりませんからね。
(2010.11.10)
追記 (2010.11.16)
インストールが終わったあと、更新が終わったあとなど、適当な時期に「スナップショット」をとっておくと、その時点まですぐに戻れます。
一部訂正 (2010.11.17)
追記 (2011.07.25)
久々に、(ホスト) Windows 7 + VirtualBox 4.1 + (ゲスト) Ubuntu 11.04 Desktop 日本語 の環境でやってみました。微妙に VirtualBox の動作が変わったようにも思えますが、だいたい同じ操作でうまくいくようです。