Risposte:
Il dd
approccio funziona, ma solo se il disco fisico di destinazione può essere cestinato e completamente sovrascritto, ed è almeno grande quanto la dimensione di crescita massima del disco virtuale. Questo può anche richiedere molto tempo se il disco virtuale non è "pieno".
Un approccio alternativo consiste nell'utilizzare uno strumento di imaging come Ghost o ImageX per acquisire in modo efficiente il contenuto dei file delle partizioni del disco virtuale in una sorta di file di archivio estraibili e quindi estrarre il loro contenuto su un disco fisico partizionato.
dd
che funzionerà direttamente, VHD non è un formato RAW. Potrebbe essere necessario prima qemu-img
convertirlo in un file IMG.
Uso solo lo strumento freeware di Windows HDD Raw Copy Tool per scrivere immagini .vhd su supporti fisici.
Il mio caso d'uso sta usando Windows 7 per replicare le partizioni FAT32 su schede micro SD ma può supportare una vasta gamma di interfacce / tipi di media.
Ha una versione portatile disponibile per uso singolo o nomade o un programma di installazione se preferisci quel tipo di cose.
La GUI è abbastanza semplice:
Collegare il disco rigido virtuale a una macchina virtuale (è possibile utilizzare MS Virtual PC, VirtualBox o qualsiasi altro software di virtualizzazione che supporti VHD). Quindi avviare la macchina virtuale con Acronis True Image ISO montato in un'unità CD virtuale e creare TIB
un'immagine, quindi avviare il computer fisico con lo stesso CD (questa volta masterizzato su un disco) e ripristinare l' TIB
immagine sull'HDD fisico utilizzando Sector-by- settore.
Ciò supporta il recupero di più partizioni dalla stessa immagine.
create TIB image
e dove salvarlo? Sul disco rigido virtuale? E se VHD 200 o più Gb? Questa soluzione non è applicabile
Le seguenti operazioni vengono eseguite su knoppix (live linux) dal terminale.
su
modprobe nbd
qemu-nbd -r -c /dev/nbd0 -f vpc <vhd_file_name>
se VHDX fromat
qemu-nbd -c /dev/nbd0 -f VHDX <vhdx_file_name>
ddrescue -v -f /dev/nbd0 /dev/sda >>>> image to /dev/sda writing
solo una partizione di scrittura
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
montaggio su partizione
qemu-nbd -P 2 -r -c /dev/nbd2 -f vpc <vhd_file_name> >>> -P 2 part2 of image
mount /dev/nbd2 /mnt
smontare e disconnettere il file immagine
unmount /mnt
qemu-nbd -d /dev/nbd2
Se preferisci utilizzare lo strumento basato su Windows, puoi farlo:
Savepart è uno strumento (gratuito ma non open source, disponibile sia per Windows che per Linux) che può essere utilizzato per immagini partizioni. Una volta collegato, il disco rigido virtuale può essere ripristinato su una partizione fisica tramite savepart come se fosse una partizione fisica.
L'ho fatto io stesso sul disco di sistema usando Acronis e ha funzionato. Questo era un Windows 8.1 con Hyper-V e avevo bisogno di spostarlo sul disco fisico per l'aggiornamento a Windows 10.
Ecco come l'ho fatto: ho collegato l'SSD a un altro PC e ho montato il disco rigido virtuale. Ho quindi clonato dal VHD montato su un altro SSD (lo avrei comunque sostituito). Ho scelto "Manuale" e le impostazioni predefinite, ma potrebbe funzionare anche con "Auto".
Quando ho avviato il nuovo SSD Windows non si avviava, quindi ho riavviato con un disco di installazione di Windows e ho scelto "Ripara". Windows è stato avviato normalmente dal disco.
L'unico problema dopo è stato un errore all'avvio di una macchina virtuale che mi diceva che l'hypervisor non era in esecuzione. Risolto questo eseguendo il comando seguente da un prompt MS-DOS elevato e riavviato: "bcdedit / set hypervisorlaunchtype Auto".