I would like to install 7 Enterprise x64 in a VMware VM. This will be a clean install on UEFI/GPT. My goal is to create a clean, prepped baseline image that I can restore on my physical machine, instead of having to do clean installs of Windows every time I screw something up. I will be installing all Windows updates (but no drivers yet, or even VMware Tools, while it's in the VM). Afterwards I'll be doing some general tweaks/optimation. I will also be editing thousands of Registry entries and moving critical system folders (Program Files, Program Files (x86), ProgramData, and parts of the Users folder) to other partitions in the VM. This will also be accomplished via NTFS junctions. It would be a total bitch to have to do all these things on a clean install. I've tested my methods in a VM before, they work very well, and so I would like to migrate it outside of a VM.
I'll also need to defrag my images and make them (the disk image files) contiguous. I'll also be running Disk Cleanup, SFC /scannow to make sure no system files are corrupt, and checking each of VM's partitions for filesystem errors.
Once this is finished I would like to image the VM's 3 partitions (without the EFI partition) into discrete images which can be restored via imaging software to real partitions on real UEFI/GPT disks (no longer in a VM).
But my main concerns are:
1. What type of disk image should I use for the VM (vhd, vhdx, vdi, etc)?
2. Will the Windows install boot on real hardware once migrated outside a VM (assuming I create the boot files correctly)?
3. My target hardware will be an SSD with 16GB RAM, i7 CPU, and Nvidia/Intel graphics cards. But will Windows still "believe" it is in a VM once migrated? In other words, will it reacclimatize itself to the new hardware it's on, and perform like Windows on SSD should?
4. Will I need to "sysprep" the physical install after it is moved, or can this be skipped (I have zero experience with this)? I have read that this may be necessary to "generalize" the OS to prepare it for new hardware. This may also help me avoid the issue listed below, but not sure.
5. The VM disk image will be running in SCSI mode (I think, need to check again). But my physical target disk is SATA with AHCI activated. I know that an installed Windows will BSOD if the disk operation mode is changed out from under it. How can this be avoided/fixed? This, I think, is perhaps the biggest snag I'll hit.
6. How should I go about imaging the partitions? Does the VM's disk need to be online (booted and running) or offline during the imaging? Does the image need to be "mounted" before imaging (since it's RAW)? Should I image to external HDD, into another RAW image/disk image? And what software should be used (I'm thinking CloneZilla for best reliability and integrity)?
After migration is complete I will install drivers and make a finalized image of the necessary partitions.
Is there anything else I should take into consideration?
Thanks for any advice!
Edit: Before anyone asks why I'm seemingly nuts enough to move system folders, it's because I would like to keep the size of the C drive on SSD to a minimum, and keep writes on the SSD to a minimum. The folders will be located on 2 volumes on my HDD data drive. Any softwares that are desired to benefit from the SSD's speed will be installed to C:\Apps. And my main user profile folder will also remain on SSD. User and Windows Temp folders will be moved, as well as C:\Windows\Installer (where many programs store their installers/uninstallers), and C:\Windows\SoftwareDistribution (Windows Updates download folder). Hibernation (hiberfil.sys) will be disabled and the page file will be relocated to HDD. Afterwards all Windows-related partitions will be encrypted and reimaged once more.