ホストがWindowsの場合、またはWindowsからVHDファイルにアクセスできる場合、すべての変更を親、祖父母などにマージするトリックがあります。
DiskPartツールと2つのコマンドを使用しています。
select vdisk file="whatever your file is, with full path"
merge vdisk depth=#
#は移動する階層レベルの数です。1は親の親、2は親の親などです。
それはインプレースで行われ、クローン作成などよりはるかに時間がかかりません。
マージした後、すべての中間VHDを削除でき(それらは削除されません)、マージした親のVirtualBoxにアタッチすることを忘れないでください。
例:
Disk3.vhdはDisk2.vhdの子、Disk2.vhdはDisk1.vhdの子
Disk1.vhdを使用する場合は、Disk3.vhdのすべての変更を使用してdepth=2
、Disk3.vhdを選択します。Disk2.vhdのすべての変更をDisk1.vhdで行う場合は、depth=1
select Disk3.vhdを使用します。
醜いVirtualBoxスナップショットの必要がないことも覚えておいてください。DiskPartcreate vdiskコマンドを使用して、既存のディスク(差分ディスクの場合もあります)から差分ディスクを作成したり、巨大なツリーを作成したりできます。
残りすべて:ポスターはVHD(VDIではなく)を使用しているため、DiskPartやディスク管理などのネイティブツールを使用して、ゲスト(ホストがWindowsの場合はホスト)からそのディスクにアクセスできます。
あなたのために、ポスター:マージの前に常に完全なバックアップがあることを忘れないでください、VirtualBoxクローンは適切に機能せず、新しいファイルを作成し(書き込み時にコピー)、DiskPartマージは適切に機能します(ファイルを変更し、作成しません)新しいもの)。
VHD / VHDXが使用されているため、別の異なるアプローチが可能になることを願っています(VMDK、VDIなどでは無効で、Windowsホストでのみ有効です)。
注:Windows 7以降、XPおよびVistaは外部M $ツールでVHDをマウントできますが、DiskPartはXPおよびVistaでVHDをサポートしていません...これはすべてWindows HOMEエディション(7以降)でも機能します。サーバー版。