1
Prerequisite Description
Computer used: UEFI-only laptop with Startup Manager (boot volume can be selected on boot)
Clone source: Laptop's internal NVMe AHCI SSD (soldered to motherboard), 500 GB
Clone destination: Samsung SSD 850 EVO 1 TB connected to laptop via 2.5” SSD USB 3.0 Enclosure (USB to ATA/ATAPI Bridge)
Cloning software: Macrium Reflect 8 Workstation run via Windows PE Recovery USB (created by Macrium Reflect 8)
Special conditions: Since internal SSD is non-removable and source Windows 10 installation is required to be kept, it's required that cloned Windows 10 boots from external SSD while the clone source is still present

Steps taken

  1. Prepare clone destination disk's volumes by connecting destination disk to souce disk running Windows 10 and executing (can be done via Disk Management, I'll keep it simple since it requires less explanation):
DISKPART
  LIST DISK
    External SSD disk number is 1
  SELECT DISK 1
  CLEAN
  CONVERT GPT
  CREATE PARTITION EFI SIZE=100
  LIST PARTITION
  SELECT PARTITION 2
    Select EFI partiton
  FORMAT FS=FAT32 QUICK
  SELECT DISK 1
  CREATE PARTITION PRIMARY
  SELECT PARTITION 3
    Select Windows partition
  FORMAT QUICK
  ASSIGN LETTER Z:
  EXIT
  1. Boot to Macrium Reflet 8 and clone only Windows partiton from source to destination, don't change partiton size upon cloning
  2. Boot back to souce disk running Windows 10, reassign letters to clone destination volumes
DISKPART
  LIST DISK
    External SSD disk number is 1
  SELECT DISK 1
  LIST PARTITION
  SELECT PARTITION 2
    Select EFI partition
  ASSIGN LETTER Y:
  SELECT PARTITION 3
    Select Windows partition
  ASSIGN LETTER Z:
  EXIT
  1. Apply boot data to EFI volume of clone destination drive by BCDBOOT Z:\Windows /S Y: /F ALL
  2. Boot to Startup Manager and select clone destination volume to boot from

Result

  1. Windows 10 boot logo appears
  2. LED indicator on SSD enclosure starts blinking
  3. Then loading Windows indicator (cirlce of animated circles) appears
  4. LED indicator on SSD enclosure stops blinking and turns off while Windows loading indicator keeps animating for extra minute or so
  5. Then computer reboots without any error screens
  6. Loop I've attempted to use all bcdedit.exe fixes (like /fixboot, etc.) on the clone destination volume from Windows PE, didn't help. I've also attempted to fix this by using DISM /RestoreHealth on external SSD volume with specifying clone source volume as source (complete command is DISM /Image:D:\ /Cleanup-Image /RestoreHealth /Source:C:\Windows executed in Windows PE, volumes are correct). All commands complete successfully but the result is still a boot loop.

Further testing steps taken

The destination drive has been prepared as in steps 1 & 3. Then same Windows 10 version as clone source was installed to SSD in enclosure using DISM executed from clone source running Windows 10 using DISM /Apply-Image /ImageFile:install.wim /Index:1 /ApplyDir:Z:. After that EFI boot data was added to external SSD using the same command from step 4, BCDBOOT Z:\Windows /S Y: /F ALL. Upon booting from external SSD the Windows Setup finalization starts and after completing OOBE quiz the new installation runs perfectly from external SSD. No additional drivers added, no additional steps taken.

Question

According to this forum thread, normal internal SATA install, that was cloned to a USB device, will not boot. My experimentation results comply to forum thread warning. However since it's been a while and there's not much information I could find (only one thread about another failed UEFI NVMe to SATA cloning), I'd like to make it clear if it's totally impossible or I'm missing something.

Probably important note. Laptop's internal SSD requires a third-party driver to operate (i.e. you have to add driver to $WinPEDriver$ in root of bootable Windows 10 USB installer flash drive, otherwise Windows Setup won't "see" laptop's internal SSD). The USB 3.0 enclosure (reported as USB to ATA/ATAPI Bridge and it's 850 EVO SSD reported as SATA SSD) doesn't need any special drivers and works perfectly even in vanilla Windows 7.

P.S. In case somebody dug into this matter, my ultimate goal will be cloning Windows 7 Ultimate SP1 the same way. I just happen to have everything Windows 10 (Windows PE, ISO, etc.) up and running for testing.

6
  • Is it possible to disable the internal drive in the laptop's UEFI settings? It could be due to some identifer conflict.
    – Tom Yan
    Commented May 13, 2022 at 6:30
  • If it's possible to meet the goal using DISM and WIM image, that's something I can manage. However I absolutely cannot sysprep /generalize the source beforehand because it will wipe software licenses and some user-profile-related software connections.
    – bananakid
    Commented May 13, 2022 at 6:30
  • Also try removing all entries (except (Default)) in HKLM/SYSTEM/MountedDevices before you shutdown and clone.
    – Tom Yan
    Commented May 13, 2022 at 6:35
  • @TomYan unfortunately no UEFI settings available for user (like, at all). I failed to mention I double-checked all UUID's of all partitions (and partition schemes IDs as well for that matter, used DISKPART & CloneDisk program in WinPE to check everything). There're no same volume UUIDs on source and destination disks. I have also double-checked if Macrium Reflect 8 manages to update volume UUIDs on clones: yes, it handle's that. Also I specifically reapplied bcdboot data of EFI volume using clone destination to prevent conflicts (as far as I understand the idea of what bcdboot does).
    – bananakid
    Commented May 13, 2022 at 6:40
  • @TomYan regarding HKLM/SYSTEM/MountedDevices, I 've also tried editing \DosDevices\C: to \DosDevices\D: on the destination drive after cloning. Will try removing everything but I feel it's something different.
    – bananakid
    Commented May 13, 2022 at 6:45

0

You must log in to answer this question.

Browse other questions tagged .