Easiest way to move my Windows installation to an SSD?

44

37

I've taken the plunge and bought an SSD and want to move my existing Windows installation over. The current hard disk is 500Gb, but I've trimmed the contents down to about ~40Gb. I'm transferring it across to a 100Gb SSD and looking for the easiest way just to copy everything across and set the SSD up as a boot device.

I've looked at a few tools like Macrium Reflect, but they don't seem able to restore to a smaller drive. Do I need to go for something like PING to do this? I'm trying to avoid scary Linux-based boot utilities if possible, does anyone know of an easier way?

Jon Artus

Posted 2011-03-03T13:33:26.547

Reputation: 583

I note that as of 2015 macrium reflect free does restore to a smaller partition in manual mode. – Journeyman Geek – 2015-11-09T10:48:37.953

Answers

35

ImageX is a free tool that is part of the Windows 7 WAIK (download). It is what we use for imaging machines at work. It can even be used to create backups of the machine. If you're doing the C drive (you have another drive D, and your SSD is currently set to E), then it would just be a matter of booting into Windows PE, and then

ImageX /capture c: d:\image.wim "bootDrive" /verify /compress fast

That will make a very large file named image.wim on the other drive. You could even map a drive, and put it on the network, which is what we do.

Then, reconfigure the drives to make sure that the SSD is now C:\.

Reboot into Windows PE again, and type:

imagex /apply d:\image.wim 1 c: /verify

Then, after that, it is CRITICAL to run this command, still in PE:

bcdboot.exe c:\windows

that will have it make everything bootable.

If bcdboot.exe fails you might have to mark the partition you copied Windows on as active first using the diskpart utility.

Brian

Posted 2011-03-03T13:33:26.547

Reputation: 2 934

Will this solution hold for Windows 8.1. I can only find Windows AIK for Windows 7/Vista - will that work for Windows 8.1? Tx. – urig – 2015-05-20T10:57:07.133

1@urig I don't do much with windows anymore, but I believe they changed the name to Windows ADK – Brian – 2015-05-21T12:59:34.373

Thanks. This unofficial article indicates that ImageX is indeed included in Windows ADK and is still used in Windows 8 / 8.1.

– urig – 2015-05-22T16:00:31.463

I have also 100MB partition in my Windows machine. Should that partition be copied to the new SSD as well? – jarno – 2015-10-17T08:45:44.867

Do you have to install Windows 7 WAIK to the existing Windows 7 installation? Or is there another way to get the Windows PE ISO? – jarno – 2015-10-31T13:54:25.323

1Won't just using Vista's (or 7's) own built-in image backup tool ("Back up computer" in Backup and Restore Center) work for this? Back up old boot drive to a portable HDD then restore to the SSD using windows setup DVD? Slightly simpler, no extra tools needed. – MGOwen – 2012-07-05T00:02:59.533

I recommend using the WIM driver from the Windows Vista AIK, not the Windows 7 AIK. It's a lot faster. – user541686 – 2012-12-28T05:42:04.110

2what is windows PE? – user4951 – 2013-01-08T02:02:08.157

3how to reconfigure the drive – user4951 – 2013-01-08T05:26:37.733

Late comment here but I encountered a serious problem when using the Windows 7 WAIK to migrate my Windows 7. The added instructions in the Windows 7 WAIK download that explain how to create a Windows PE boot disk have a serious oversight. As this link explains (scroll all the way down to 'Community Additions' and read the last comment), in step 2, in the directory where you are preparing your Windows PE boot disk, you have to copy <Windows PE dir>\winpe.wim to <Windows PE dir>\iso\sources\boot.wim

– SemVanmeenen – 2013-04-13T09:08:12.843

@JimThio: It's part of the AIK kit. (See the link he included.) – Apache – 2014-02-25T14:01:16.553

10

Windows 7's built-in backup feature makes this very easy, as long as you have another (third) drive to store the backup on.

http://www.winsupersite.com/article/windows-7/replace-your-hard-drive-using-free-windows-7-tools

I just did this this weekend, and it worked perfectly.

timkingman

Posted 2011-03-03T13:33:26.547

Reputation: 101

6Note Windows Image Recovery will NOT let you restore from a larger partition to a smaller partition even if the actual amount data is less than the smaller partition. I tried using this method to move Windows 7 off a 2TB HDD onto a 128GB SSD and despite having only 80GB of data on the drive it failed with "No disk that can be used for recovering the system disk can be found". – user33339 – 2014-06-28T05:44:00.997

10

My successful experience:

  • Attach the SSD drive and format as NTFS
  • Boot with the Windows 7 original DVD -> Restore
  • Check the source drive letter and destination drive letters (e.g. E: and H:)
  • Execute:

    ROBOCOPY "E:\Program Files" "H:\Program Files" /MIR /SEC /SECFIX /R:0
    ROBOCOPY "E:\Program Files (x86)" "H:\Program Files (x86)" /MIR /SEC /SECFIX /R:0
    ROBOCOPY "E:\Windows" "H:\Windows" /MIR /SEC /SECFIX /R:0
    ROBOCOPY "E:\Users" "H:\Users" /MIR /SEC /SECFIX /R:0
    BOOTSECT /nt60 H: /mbr
    
  • Detach the old drive and boot again with the Windows 7 original DVD -> Restore

  • Shutdown
  • Swap the drive, power on, select to boot from the new drive in the BIOS

Paulo

Posted 2011-03-03T13:33:26.547

Reputation: 101

6

Though @Brian answer should work, i used this one and it is much faster and dont require WAIK or WinPE:

  1. Create the partitions

    • On the new drive create a 100MB partition on the beginning of the drive, mark it as active
    • Create another primary partition at least as big as the original C:
    • Mount both partitions, for instance the small one as Y: and the big one as X:
  2. Copy the partitons

    We have to copy everything, even the MBR.

    • Get a partition copy utility that works in windows 7. I used Acronis Disk Director, but i believe Norton Ghost, Acronis True Image or even Seagate Discwizard should do it.
    • Copy your C: partition to the new drive X:
    • This should require a reboot
  3. Change drive letter

    You have to edit the new drive regedit so the assigned drive letter is not X:, but C:

    • Open REGEDIT
    • Select HKEY_LOCAL_MACHINE
    • Go to File -> Load Hive
    • Open X:\[Your windows dir]\System32\Config\SYSTEM
    • Choose a Key name, like "TEMP"
    • It will create a Temp folder, open it and locate MountedDevices
    • Scroll Down and rename \DosDevices\C: to \DosDevices\Z: (or an unused letter)
    • Finally rename \DosDevices\X: to \DosDevices\C:

    Be sure to rename the entry on your new drive's registry, not on the old one

  4. Create BCD

    This should do the bcdboot.exe role

    • Get EasyBCD
    • Go to BCD Deployment, chose the new drive's 100MB partition Y:
    • Install BCD
    • Accept the dialog, to open the brand new BCD
    • Go to Add new entry, select Windows, Type: Windows Vista/7, drive C: and click Add Entry.
  5. Change boot device

    • Reboot and get in your BIOS config (F1 or DEL)
    • Change HD priority, moving the new HD up

That's all

bortao

Posted 2011-03-03T13:33:26.547

Reputation: 688

3

This approach worked well for me (and I needed neither a DVD nor an additional hard disk). Note that I used xxclone step #2, since all other options cost money (or, in the case of Seagate Discwizard, require you to have installed a Seagate or Maxtor product).

– Joachim Sauer – 2011-10-11T10:19:46.057

This approach didn't work for me. When I booted to the SSD, the drive letter in "Computer" was C: but in Disk Management it was still X:, and the old drive was still C:. In addition, my user profile was still being loaded off of the old C:. – Steven T. Snyder – 2012-05-02T18:01:43.213

6

I just successfully copied my Windows install over to a new SSD yesterday. I knew I wanted to use GParted, but wasn't sure what to do after that. It took me a couple hours to get the computer booting from the SSD after I copied Windows over, so I thought I'd make note of what I did.

Here is what I did:

  • Freed up enough space on my hard drive so that what was on it would fit on the SSD.

  • Downloaded and burned a GParted live CD. It is a Linux based partition editor, but I've found it easy to use and reliable.

  • Put the SSD into the computer.

  • Changed the boot priority in the BIOS to have the SSD at the top (good to verify so you know where you're booting from).

  • Booted to GParted and resized my hard drive's partition to be smaller than the SSD. The resizing took almost an hour. Then I copied and pasted the hard drive's partition to the SSD and resized it to fill the SSD at the same time. Took about half an hour. (Go in advanced mode and consider options, such as --recover, if dealing with a defective disk).

  • I unplugged the hard drive with my old Windows install. You don't have to, but if it is unplugged, then when the computer is booted and the desktop appears, you know everything is working right. (During my attempts when I didn't have the hard drive unplugged, I once booted from the SSD when it was drive E, but the registry still referenced drive C. So I was using E:\Windows from the SSD, but C:\Users and C:\Program Files from the hard drive.)

  • Booted to the Windows 7 install disk and opened the recovery command prompt. The drive letters needed changed so that the SSD's partition is C: like it was on the hard drive. I did this with diskpart. Something like this (the SSD is 111 GB):

** IMPORTANT: If partitions were cloned to new disk, you won't be able to tell them apart while having both disks connected. Simplest thing is leaving a text file in the OS partition saying which drive that is.

    X:\Sources> diskpart

    DISKPART> list volume

    Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
    ----------  ---  -----------  -----  ----------  -------  ---------  --------
    Volume 0     C                NTFS   Partition    465 GB  Healthy    
    Volume 1     D                NTFS   Partition    111 GB  Healthy    

    DISKPART> select volume 0
    ...
    DISKPART> assign letter=E
    ...
    DISKPART> select volume 1
    ...
    DISKPART> assign letter=C
    ...
    DISKPART> select volume 0
    ...
    DISKPART> assign letter=D
    ...

The partition also needed to be set active:

    DISKPART> list disk

      Disk ###  Status         Size     Free     Dyn  Gpt
      --------  -------------  -------  -------  ---  ---
      Disk 0    Online          465 GB  1024 KB
      Disk 1    Online          111 GB      0 B

    DISKPART> select disk 1
    ...
    DISKPART> list partition

      Partition ###  Type              Size     Offset
      -------------  ----------------  -------  -------
      Partition 1    Primary            111 GB  1024 KB

    DISKPART> select partition 1
    ...
    DISKPART> active
    ...
    DISKPART> exit
  • Executed these commands before restarting:

    bootrec /fixmbr
    bootrec /fixboot
    bootrec /rescanos
    bcdboot c:\windows
    

    I'm not sure they are all necessary but running them doesn't hurt.

  • Booted from the SSD and everything worked. I plugged the hard drive back in.

Jordan Miner

Posted 2011-03-03T13:33:26.547

Reputation: 291

3

Acronis True Image Home can do exactly what you ask. It allows you to restore to any partition size granted that the new partition is at least as large as the original image. Note, that sometimes it will refuse to restore to a different partition size or new hard drive/SSD. In that case, you must make the new partition on the device at least 10GB larger than the original image size (uncompressed).

Metril

Posted 2011-03-03T13:33:26.547

Reputation: 411

FYI: shrinking of original partition is not necessary with "Acronis True Image 2014" (provided with new Crucial SSD) - one can exclude folders/files when cloning drive to fit smaller one – chipiik – 2015-12-29T10:57:29.367

2

I like imagex. It is file based and one can compress, check, verify, etc. among other commands. Acronis is good also. Make sure you are using a 32 bit WinPE disc for maximum compatibility. A 64 bit WinPE will require using a 64 bit imagex which only allows for imaging 64 bit systems.

m130carbine

Posted 2011-03-03T13:33:26.547

Reputation: 21

2

I was working on following the instructions in reply to paragraph 3 from Bortao about changing your drive letters when lo and behold Windows 7 would not allow me to open the System folder X:\[Your windows dir]\System32\Config\System (claimed it was already open) so I decided to wing it.

I exited 'open hive' and searched for DosDevices which I located at

\HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices

I renamed

  • \DosDevice\C: to \DosDevice\Z:
  • \DosDevice\X: to \DosDevice\C:
  • \DosDevice\Z: to \DosDevice\X:

After that I did a lot of registry editing to change all references to X:\ to C:\ When regedit would not allow the change, I ignored the problem, and rebooted.

user122086

Posted 2011-03-03T13:33:26.547

Reputation: 21

1

May I suggest DriveClone from the Farstone company. It is freeware. I have used this cloning software numerous times with success. The only failures were when the SSD was MUCH smaller than the source. (say, 750gig source to 90gig SSD destination) The workaround for that was to clone to a SOMEWHAT smaller mechanical drive, and then clone from that to the SSD.

the original mike western

Posted 2011-03-03T13:33:26.547

Reputation: 1 159

I tried a lot of procedures. The Windows Partition Manager always says there are immovable files and it can only shrink to ~60% the size. I used a few 3rd part defrags, then shrink again. I tried gparted, nothing worked. Until I tried this. It was very simple to use and free. Just install it and clone from your OS drive to another drive (smaller, bigger, etc) and it successfully does the copy over. – Joe C – 2019-04-08T15:41:36.280

0

Symantec Backup Exec System Recovery or GHOST will do this as well. There is a free trial of Backup Exec System recovery Symantec BU Exec Home Page. Some SSD vendores have a tool for their drives for just this scenario. Did you check with the manufacturer?

Dave M

Posted 2011-03-03T13:33:26.547

Reputation: 12 811

0

I just did this, and I'll be honest - Win7 installed so quickly on the SSD, I kind of enjoyed the fresh install. I'm not sure how happy the windows drivers will be with a straight up copy - the reinstall may involve the least amount of time investment.

Kara Marfia

Posted 2011-03-03T13:33:26.547

Reputation: 2 000

2The drivers will be fine - I just moved an SSD from a 4 year old dual Xeon machine to a brand new i7 2600K rig and it booted fine. Just make sure you uninstall any proprietary AHCI/RAID drivers and just use the MSAHCI driver before you make the switch. – Shinrai – 2011-03-03T16:22:56.410

...I should add that I endorse a clean install, though. It's sooo fast! – Shinrai – 2011-03-03T16:23:21.917

Good to know this will work so smoothly. – Kara Marfia – 2011-03-03T20:49:43.680

2installing windows 7 is quick. reinstalling 300 programs i have installed, is not. – bortao – 2011-09-14T17:24:54.247

I find reinstalling programs to be therapeutic in a way. – Rob – 2011-09-14T17:27:26.950

0

I recently purchased an Intel SSD drive and could not get the included Acronis software to detect an Intel drive. So I tried Ghost from Symantec and lets just say 'Ghost isn't what it used to be'.

I then decided to give Paragons 'Migrate OS to SSD' Software a try and it did not work either. After a nightmare trying to order the software, with German Bank charging my card, etc., I got the software thanks to a very nice person at Paragon software deciding to give me a complimentary copy out of what I can only assume was pity.

I had already attempted to shrink my OS boot partition from 1TB to a more manageable size and did get it to around 186GB, which was not small enough to use Windows built in imaging software with my 160GB (149GB formatted) hard drive. So on to the Paragon solution.

I downloaded, installed and ran the software. A few prompts later it was completely done. The entire image was in reality 58GB and so took about 8 minutes, if that, to complete. After swapping the boot order in the system BIOS to reflect the new SSD, the system still booted from the original OS HDD and not the SSD. The files were on the SSD—the directory structure and content was right, but the long and the short of it is that the software did not work as advertised.

I tried checking to see that partition had not been made hidden by the software and it had not. I tried all of the above mentioned bootrec and bcdboot options and still 'no joy'. I was left with an OS that would crash on boot saying 'Autochk program not found. Skipping Autocheck.' then bluescreen for .5 seconds and reboot to the same end.

On the birght side the fresh install took about 11 minutes. The reconfigure and data transfer has taken much longer, though I now have that 'NEW INSTALL' feel and I like it! Anyway, Migrating the OS to SSD did not work for me but may work for you. I don't know.

Mach

Posted 2011-03-03T13:33:26.547

Reputation: 1

0

No need to use expensive tools. You can create a Snapshot using a trial version of DriveSnapshot to make a snapshot of your ~40 gb of data. I often used it back in the times of Windows XP and it is still great! You can make the snapshot "live" without any hassle (I think).

Partition your SSD as needed, then just use DriveSnapshot again to extract your snapshot to the SSD.

user3001

Posted 2011-03-03T13:33:26.547

Reputation: 123

1just remember to mark partition as active and copy MBR – user956584 – 2019-02-08T21:51:33.330

-2

Is no easy way, spend like 4 hours try to copy windows 7 to another HDD nothing is free, everything from google is paid and not working

For windows 10 you can use: snapshot.exe and then use USB windows 10 installer then run repair options and its done. Just remember to mark partition as active because snapshot only copy data

Windows 7 Clone HDD to another by this software super easy: HDDRawCopy1.10Portable.exe and free

user956584

Posted 2011-03-03T13:33:26.547

Reputation: 295

-2

Haven't tried it personally, but there's a free drive copy utility called EaseUS Disk Copy.

cpuguru

Posted 2011-03-03T13:33:26.547

Reputation: 587