Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I transferred Windows 7 from my old HDD to a new HDD by cloning the System Reserved and C: partitions, and making the System Reserved the active one, however when I boot from it the keyboard (both USB and PS/2 ones) do not respond to anything (the NumLock light is always on, and they do not type).

The mouse, which is plugged into USB as well, works fine. In addition, I tried logging in with RDP, however the client screen just went to solid light blue with the mouse cursor. No explorer.exe or anything.

Any way to get this working without re-installing on the new HDD?

share|improve this question

3 Answers 3

up vote 1 down vote accepted

In short the problem is that in certain circumstances Windows maps your cloned drive to different drive letter than C:. Somehow system boots to log-in screen but many drivers are not loaded (e.g. keyboard ones).

That is how after few attempts I have finally managed to clone the windows-7 system disk properly. Below there are the steps.

  1. Booting Win7 from the source drive.

  2. Cleaning destination drive
    In an elevated cmd window launch diskpart and then

    select disk=1
    detail disk
    clean


    Note: at detail disk step make sure that this is the disk you want to clean entirely.

    When I skipped this cleaning step (first time) I got a drive with no keyboard working (including on-screen one). Thus leaving me with no option to log-in.

    Some explanation (as I see it).

    When you first connect/initialize a drive to the Win7 system the drive letter is assigned and several GUIDs created (see HKEY_LOCAL_MACHINE/SYSTEM/MountedDevices registry key).
    When you copy the drive, the old assignment (e.g. letter D) is in effect, and in fact there is no drive at letter C when you boot. Somehow system boots to log-in screen but many drivers are not loaded (e.g. keyboard ones).
    On the other hand When you clean the disk with parted the registry is cleaned as well (the references to destination drive) not only the drive. So next time the system boots with this drive it is free to chose the drive letter C: (in absence of the original drive).

  3. Cloning the disk
    I used EaseUS Partition Manager 9.1, and its clone Disk Wizard.
    It did job well. Surly other tools would do similarly.

  4. Before booting the new drive remove the source one.
    Otherwise the source one will be mounted on C: and the destination one will be assigned another drive letter... (back to square one).

  5. Voila.


Note: I believe you could make your job simpler if you did connect source and destination drives to another PC and then would do the cloning. This is provided that you had never connected the new drive to the old system.

PS. This answer is based on one I gave to the similar thread on superuser (the other answer involved bitlocker as well).

share|improve this answer
    
I guess you could fix the drive assignment by booting from the old drive with the new one connected as well. <br> With regedit tool, select LOCAL_MACHINE tree and try 'Load Hive' menu option, then select windows/system32/config/SYSTEM from your new drive. Go to MountedDevices key under the new 'hive', and clear all keys that start with '/DosDevices' –  user377178 Jan 6 '12 at 21:47
    
Re-cleaning the disk and using a different program to copy it seemed to work, but it did require a system repair from the Windows CD to get it to work. –  Eli Jan 8 '12 at 20:03

One possibility is that something got corrupted in the move.

Check device manager and uninstall any keyboard related drivers, unplug and replug in the keyboard and let windows grab the drivers off the net.

Alternately 'sfc /scannow' should fix it in theory, but you'd either have to create a batch file you can run off a USB stick or use an on screen keyboard to type in the command.

share|improve this answer

I think it is possible to fix this without redoing the copy of the drive.

  1. Boot from the old drive with the new one connected as well.

  2. With regedit tool, select LOCAL_MACHINE tree and try 'Load Hive' menu option, then select windows/system32/config/SYSTEM from your new drive.

  3. Go to MountedDevices key under the new 'hive', and clear all keys that start with '/DosDevices'
    This will clear the wrong drive letter assignment to your new drive, and to the C letter to the source drive as well.

  4. reboot with the new drive.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.