Scenario: I did a sector-by-sector backup (using Clonezilla) of my internal SSD containing Windows, and wanted to validate it, by booting from the backup, without removing the internal SSD (laptop is refurbished, but newly bought, don't want to risk breaking it). Then some weird things happened, see below.
Question: What is the reason, for these weird behaviours? In particular, why is it a problem for Windows, to have two disks with identical content, and why does the boot process "jump" to the internal hard disk? But most important: can I assume that my sector-by-sector backup can be used for restore, or would it be useless for some reason? (Assuming the backup disk is not faulty.)
Details that could matter: The SSD had three partitions: 1. 100 MB boot, 2. many gigabytes of Windows system, 3. 2 GB of restore partition. The HDD used for backup is bigger than the SSD, thus it has now some empty space at the end.
Weird behaviour #1: After selecting the externally connected hard-disk during boot-up, Windows started to load, but then it failed with the "inaccessible boot device" error.
Weird behaviour #2: After this, I booted up fine from the internal SSD, and both disks could be seen by Windows. However, the backup disk could not be mounted by Windows, since "it had the same signature as another disk" (unfortunately, I did not make a screenshot, but Device Manager was showing a similar message -- I guess this must be some hash of the entire content?). I guess this is related to #1.
Weird behaviour #3: I managed to boot up either of the copies (I'm not sure which one, see below) in safe mode, which failed, resulting in some log being written (again, foolishly, I did not note the name/path of the logfile, so I'm not sure which this it was, or which file), but I guess this was enough to make the disks different. Now, when trying to boot from the external drive, the boot succeeds (I select the device in the boot menu, Windows loads fine), however, I can see it was loaded from the internal drive (that is mapped to C: and marked as the disk with Windows, based on the make and model of the disks). So the boot process "jumps" from one disk to the other!
My theory is that the original SSD has some kind of ID, and the Windows boot loader uses that ID to find the disk used to boot. Even if the boot loader was started from another disk. Is this the case? If so, this also means, that I can restore the sector-by-sector copy only to the very same SSD from where it came from.