20

I have cloned a hard drive to an SSD using Clonezilla. Both drives were of identical size, and the process appears to have worked successfully.

I can boot into Windows 10 from the SSD without any apparent issues, however the other disk (the original source drive) is offline. Computer Management's Storage section displays the following tooltip for the offline disk:

Offline (The disk is offline because it has a signature collision with another disk that is online)

I've done some reading into this, and it looks like this disk signature is something that is stored in the "Master Boot Record" of the disk, and is also referenced by Windows in its "Boot Configuration Database", and the exact copy of the disk done by Clonezilla has also duplicated the disk signature.

Is the SSD okay considering it's had its disk signature replaced with that of the old disk? Research suggests that it should be fine, and indeed that the destination ssd's drive signature would need to have been changed in order for me to boot from the cloned Windows installation, but because I lack knowledge in this area, I am uncertain whether or not this assumption is correct.

Also, just in case I want to boot from the old disk, but still see the SSD in Windows (and vice versa), what would be the best way to go about updating the disk signature of either the old hard drive or the new SSD (so that I can boot from either drive and also be able to see both drives no matter which one I choose to boot from)?

I did try and do some research on this, and had a look at an article (https://blogs.technet.microsoft.com/markrussinovich/2011/11/06/fixing-disk-signature-collisions/) regarding this issue, but it's not clear in the article (where it talks about restoring the Disk Signature) whether they're talking about somehow magically restoring original Disk Signature of the destination drive to what it was before it got replaced in the cloning process, or if they're talking about generating a new Disk Signature with Windows (by bringing it online) and then using BCDEdit to update the Windows BCD on the old disk.

2
  • Yes; It's fine; Don't attempt to boot with both devices otherwise that will cause a problem obviously
    – Ramhound
    Sep 13, 2017 at 21:32
  • multibooters.com/tutorials/… Suggests a program that can modify the signature be sure to update the bcd entry to which ever drive you do chnage
    – Ramhound
    Sep 13, 2017 at 21:35

4 Answers 4

14

You should be able to fix colliding disk signatures with the diskpart command line utility that comes with Windows. It allows you to view and change the disk signature.

Open a command prompt (cmd.exe) as administrator. Type:
diskpart and hit ENTER after each command;
the prompt changes to DISKPART>
list disk to get a list all mounted physical disks.
Now, type select disk xy, e.g. select disk 1.
after the disk is selected, type:
uniqueid disk to show the signature of the disk.
To learn more, type help uniqueid disk
To change the signature, type: uniqueid disk ID=NEWSIGNATURE
(I suggest to increasing or decreasing the (hexadecimal) id by 1, [1-9A-F])
Finally, type exit, then reboot.

Warning: Do this on your own risk.

3
  • 3
    What's the difference between this and simply bringing the Disk 'Online' via the Disk Management section of Computer Management? Would the disk still be bootable from the existing Windows installation that's on it? What about the Windows BCD? Would that be where the article I linked above comes in (with BCDEdit)? Sep 14, 2017 at 6:46
  • No, you would have to fix the MBR of the disk with the changed signature. Bringing it Online as described in the linked article is indeed pretty much the same. Maybe I misunderstood your question.
    – wp78de
    Sep 14, 2017 at 7:16
  • Of the two questions in bold, I have reworded the second one to try and clarify things. Does that make things clearer? Sep 14, 2017 at 10:22
8

As @Interminable said in the comment to the other answer, the solution for me was to just right-click on the offline disk and select 'Online'.

3
  • 1
    Doing so crashes disk management for me.
    – HippoDuck
    Aug 1, 2018 at 15:27
  • Bringing it online is not likely to work well: "As it is used to uniquely identify disks, Windows will not allow multiple disks with the same disk signature to be online at the same time. If you attempt to bring a second disk online, windows will re-calculate the disk signature on the second disk. This will potentially make it not bootable and also change any drive assignments." kb.macrium.com/KnowledgebaseArticle50152.aspx
    – danio
    Sep 7, 2018 at 20:21
  • Right-clicking and selecting "online" work for me: windows assigned letters to the different partitions of my drive
    – MagTun
    Aug 24, 2020 at 9:48
0

I just faced this when I cloned a small SSD to a faster and larger NVMe drive.

It turns out that the Clonezilla boot disk has all the necessary tools to fix the problem.

Solution 1 - Totally erase your source drive

If you don't need any of the previous contents of the source drive that you just cloned, the easiest option is probably to discard its contents entirely.

The examples below assume that your old disk is /dev/sdb

If your disk is an SSD:

sudo blkdiscard -f /dev/sdb

(if you want to erase it securely, use the -s option if it's supported. Otherwise use the -z option.)

If your disk is not an SSD:

sudo cat /dev/zero > /dev/sdb

Solution 2 - Change the disk identifier

If your old disk is /dev/sdb, you can run this command to give it a new UUID disk identifier:

printf '%s\n' p x i $(uuidgen) r w | sudo fdisk /dev/sdb

This sends predefined input to the fdisk command to do these steps:

  1. p: print the partition table
  2. x: extra functionality (experts only)
  3. i: change disk GUID
  4. $(uuidgen): generate and input a UUID
  5. r: return to main menu
  6. w: write table to disk and exit

How to confirm the problem

Use this command:

lsblk -o NAME,SIZE,TYPE,PTUUID,PARTUUID

This displays something like this:

NAME    SIZE   TYPE PTUUID                               PARTUUID
sda     238.5G disk ec9ce18e-d541-11ed-afa1-0242ac120002
├─ sda1 16M    part ec9ce18e-d541-11ed-afa1-0242ac120002 13875f5e-70f7-4d69-a95f-5690529d791f
└─ sda2 238.4G part ec9ce18e-d541-11ed-afa1-0242ac120002 e962c6c7-5806-4a87-919e-f4cce86a7e9d
sdb     465.7G disk ec9ce18e-d541-11ed-afa1-0242ac120002
├─ sdb1 16M    part ec9ce18e-d541-11ed-afa1-0242ac120002 13875f5e-70f7-4d69-a95f-5690529d791f
└─ sdb2 465.6G part ec9ce18e-d541-11ed-afa1-0242ac120002 e962c6c7-5806-4a87-919e-f4cce86a7e9d

(sudo fdisk -x can also work)

In this example, sda and sdb have the same disk identifier (i.e. partition table UUID). The two partitions on each drive also respectively have identical partition UUIDs.

If 2 disks have the same disk identifier, it can confuse the BIOS/UEFI boot process because it might not know which disk is which.

This answer gives a good overview of the various types of ids/UUIDs involved.

-1

diskpart has two different commands. set id and uniqueid, if you clone a disk you want both of these ids to be the same because it is intended you are replacing one disk by physically removing it from the system. I would think you simply remove the sata cable connection to one of the two disks since you should be able to boot from whichever is connected to the proper sata port. diskpart also shows with the detail command the route to the disk you are using. for WHAT ITS WORTH. If you are looking for identical it may not be possible since the disk itself may have read only memory with a serial number imbedded within. Its all quite alimentary my dear Watson.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .