Swapping out disk drives happens on Windows systems for various reasons. Driving factors can include improved performance (HD → SSD), added capacity (smaller → larger disk), or drive replacement (damaged or failing disk → healthy disk). Whatever that reason might be, a typical operation involved in switching disks is called “drive cloning.” This activity involves making a more-or-less complete and exact copy on one disk from another. Here’s a primer or some “Win10 Drive cloning 101” coverage to shed light on that process.
Win10 Drive Cloning 101: The Easy Case of Data Drives
There’s little danger or difficulty involved in cloning a data drive for Windows 10 (or other modern Windows versions). This describes a drive whose role involves only storing information for OS access and use. It’s not involved in booting or running the OS, which require special considerations. One need only use a backup or cloning utility to clone a source drive on a target of one’s choosing. I’ve had good luck with a range of such programs. These include free versions of Macrium Reflect and AOMEI Backupper, and paid versions of Acronis True Image and Paragon Backup and Recovery. In fact, MajorGeeks has a whole page of “drive cloning and imaging utilities” from which one can choose.
Win10 Drive Cloning 101: The Harder Case of Boot/System Drives
Things get more interesting when the source (and target) drives boot a PC, and supply its OS. Old-fashioned BIOS PCs work fine with simple drive cloning. But newer (and more common/modern) PCs boot using the Unified Extensible Firmware Interface (or UEFI). This environment records a globally unique identifier (GUID) for each boot drive in nonvolatile memory, and checks that ID during the boot process. If the value discovered doesn’t match the value recorded, the system won’t boot. Thus one must manage UEFI boot data as part of the drive cloning process.
Numerous tools and methods make this task possible. One approach means using a specialized tool like Paragon’s Migrate OS to SSD. (This web page also includes a nice explanation of the nitty-gritty details). Another approach is to clone the drive, and then to undertake boot repairs. First, disconnect all drives except the boot drive. Second, boot the system from a recovery or repair flash drive. Third, boot into the Advanced options for OS repair, and run the Startup Repair options. This should rewrite the Boot Configuration Data (BCD) to reflect the GUID for the newly-provided boot disk. If that fails, consult this Microsoft Developer Note “Adding Boot Entries” to use BCDedit at the command line for manual repairs instead. (The “BCEDit /set” reference is also helpful when working with this utility at the command line.)
There’s another raft of considerations involved in switching from legacy BIOS to UEFI when swapping a boot/system drive. See the TechNet article “Converting Windows BIOS Installation to UEFI” for a broad introduction (the article focuses on Windows 7 and 8 versions, but also applies to Windows 10 except that partition 1 should be 450 MB, and partition 2 — the EFI partition — 100 MB in size; see also UEFI/GPT-based hard drive partitions for layout data).