回答:
このdd
アプローチは機能しますが、宛先の物理ディスクがトラッシュされて完全に上書きされ、少なくとも仮想ディスクの最大成長サイズと同じ大きさである場合のみです。また、仮想ディスクが「いっぱい」でない場合、これには時間がかかることがあります。
別のアプローチは、GhostやImageXなどのイメージングツールを使用して、仮想ディスクのパーティションのファイルコンテンツをある種の抽出可能なアーカイブファイルに効率的にキャプチャし、パーティション化された物理ディスクにコンテンツを抽出することです。
dd
VHDはRAW形式ではないため、直接機能するとは思わない。qemu-img
最初にIMGファイルに変換するために使用する必要がある場合があります。
Windows専用のフリーウェアツールHDD Raw Copy Toolを使用して、.vhdイメージを物理メディアに書き込みます。
私のユースケースでは、Windows 7を使用してFAT32パーティションをマイクロSDカードに複製しますが、幅広いインターフェイス/メディアタイプをサポートできます。
1回限りまたは遊牧目的で使用できるポータブルバージョン、またはそのようなことを好む場合はインストーラーがあります。
GUIは非常に簡単です。
VHDを仮想マシンに接続します(MS Virtual PC、VirtualBox、またはVHDをサポートするその他の仮想化ソフトウェアを使用できます)。次に、仮想CDドライブにマウントされたAcronis True Image ISOでVMを起動してイメージを作成TIB
し、同じCDで物理コンピューターを起動し(今回はディスクに書き込み)、TIB
Sector-by-を使用して物理HDDにイメージを復元しますセクタ。
これにより、同じイメージから複数のパーティションを復元できます。
create TIB image
どこに保存しますか?仮想HDDへ?VHD 200 Gb以上の場合はどうなりますか?このソリューションは適用されない
以下の操作は、ターミナルからknoppix(ライブLinux)で実行されます。
su
modprobe nbd
qemu-nbd -r -c /dev/nbd0 -f vpc <vhd_file_name>
VHDX fromatの場合
qemu-nbd -c /dev/nbd0 -f VHDX <vhdx_file_name>
ddrescue -v -f /dev/nbd0 /dev/sda >>>> image to /dev/sda writing
1つのパーティションのみの書き込み
qemu-nbd -P 2 -r -c /dev/nbd2 -f vpc <vhd_file_name>
ddrescue -v -f /dev/nbd2 /dev/sda2 >>>> part2 of image to /dev/sda2 writing
パーティションマウント
qemu-nbd -P 2 -r -c /dev/nbd2 -f vpc <vhd_file_name> >>> -P 2 part2 of image
mount /dev/nbd2 /mnt
イメージファイルのマウント解除と切断
unmount /mnt
qemu-nbd -d /dev/nbd2
Windowsベースのツールを使用する場合は、次の操作を実行できます。
Savepartは、パーティションのイメージ化に使用できるツール(無料ですが、オープンソースではなく、WindowsとLinuxの両方で使用可能)です。VHDがアタッチされると、savepartによって物理パーティションに復元することができます。物理パーティションであるかのようです。
私はAcronisを使用してシステムディスク上でこれを自分で行いましたが、うまくいきました。これはHyper-Vを搭載したWindows 8.1であり、Windows 10にアップグレードするには物理ディスクに移動する必要がありました。
これが私がやった方法です。SSDを別のPCに接続し、VHDをマウントしました。次に、マウントされたVHDから別のSSDにクローンを作成しました(とにかく交換します)。「手動」とデフォルト設定を選択しましたが、「自動」でも動作する可能性があります。
新しいSSDで起動したときにWindowsが起動しないので、Windowsインストールディスクで再起動し、「修復」を選択しました。Windowsは通常どおり、ディスクから直接起動しました。
その後の唯一の問題は、ハイパーバイザーが実行されていないことを通知する仮想マシンの起動時のエラーでした。昇格したMS-DOSプロンプトから次のコマンドを実行して再起動することでこれを解決しました: "bcdedit / set hypervisorlaunchtype Auto"。