Question Migrating a Windows install to a different HDD without formatting it or cloning the whole disk ?

Jul 26, 2023
6
0
10
Hey all!

I want to install a fresh Windows 10 without loosing my old Windows 7 install. I want to keep it instead of upgrading, as it is set up with some neache software and running well, while also wanting to try out Windows AME, which requires a fresh install of Windows 10.

Currently, Windows 7 is located on an SSD, but due to limited space there and inability to by a new one, I want to migrate the Windows 7 to one of my HDD. Unfortunately, the HDD has data on it already, which I don't have the ability to easily move anywhere else.

All the tools I've found (including the build-in system imaging backup) want to clone the whole disk, wipining all data and partitions on the target disk, which is not desirable. I've tried just copying the Windows 7 partition to the HDD using the DD command in Linux, as well as some partition tools both in Linux and Windows. However, windows either reports an error at boot which cannot be fixed using a bootable windows installer, refuses to log in or refuses to load anything besides task manager. I am guessing either file linking breaks or this is some kind of security measure.


My question is - is it even possible to migrate/clone the system partition to another disk without wiping the target disk? And if so, what am I missing or doing wrong?

Kind regards,
Potato_Waffles


Edit:
Here is a screenshot of the partitioning and sizing of the drives I have
View: https://imgur.com/PSy6J3C
 
Last edited:
If you have or can generate enough "unallocated space" on the HDD, you may be able to make an image of the Win 7 installation and then restore that image to the unallocated space.

Not "cloning".

You'd need enough space somewhere to temporarily save the image file.

What is the partition arrangement on the Win 7 disc? Total space occupied on that disc? Is it mainly just a C partition, or do you have D, E, F, etc on that disc?

A bit tricky, but might be doable.
 
is it even possible to migrate/clone the system partition to another disk without wiping the target disk? And if so, what am I missing or doing wrong?
Please show screenshot from Disk Management.
(upload to imgur.com and post link)

Note - first boot from clone has to be done with old drive physically disconnected.
This complicates things.
You can not just clone OS partition. Bootloader partition has to be cloned too. If clone source and clone target drives have different partitioning, then cloning result will not be bootable. Manual steps will be required.
Then you need to be able to start your system with clone source drive disconnected.
 
I've tried just copying the Windows 7 partition to the HDD using the DD command in Linux, as well as some partition tools both in Linux and Windows. However, windows either reports an error at boot which cannot be fixed using a bootable windows installer, refuses to log in or refuses to load anything besides task manager. I am guessing either file linking breaks or this is some kind of security measure.
How do you try to boot into that?!
There are different methods depending on the disk image.
If you run the free version of easybcd on the add new entry tab there you can select a disk image and under type select it to be raw hard disk (or partition) image which would be needed for dd. I have tried that with a VHD image I took from an old windows 7 system and it worked it just adds an entry to the boot menu and you can boot right into the image.
post-65263-0-56456900-1408876221.png

Will be pretty slow on a hdd though and you will lose some features, not everything will run completely trouble free.

Bootloader partition has to be cloned too.
Generic bootloader is generic...you don't have to clone it you just have to make sure you have one, and that it is set up to run all the partitions and images you want it to.
 
If you have or can generate enough "unallocated space" on the HDD, you may be able to make an image of the Win 7 installation and then restore that image to the unallocated space.

Not "cloning".

You'd need enough space somewhere to temporarily save the image file.

What is the partition arrangement on the Win 7 disc? Total space occupied on that disc? Is it mainly just a C partition, or do you have D, E, F, etc on that disc?

A bit tricky, but might be doable.
I've uploaded a picture in the main post. I just have the C: drive, I already resized it when I was trying the other methods. I did try the image restore method, but it warns me it will reformat the drive.
 
How do you try to boot into that?!
There are different methods depending on the disk image.
If you run the free version of easybcd on the add new entry tab there you can select a disk image and under type select it to be raw hard disk (or partition) image which would be needed for dd. I have tried that with a VHD image I took from an old windows 7 system and it worked it just adds an entry to the boot menu and you can boot right into the image.
post-65263-0-56456900-1408876221.png

Will be pretty slow on a hdd though and you will lose some features, not everything will run completely trouble free.


Generic bootloader is generic...you don't have to clone it you just have to make sure you have one, and that it is set up to run all the partitions and images you want it to.
Oh, I have not seen this method! I will try it and post back the results! Thank you! <3
 
I've uploaded a picture in the main post. I just have the C: drive, I already resized it when I was trying the other methods. I did try the image restore method, but it warns me it will reformat the drive.
So windows 7 is on SSD - Disk 0. Correct?
You said, you have limited space on SSD, but you have 348GB of unallocated space there.

1. Extend partition C: and add more space to it. Leave enough space for windows 10 partition.
You can safely add 200GB to C: and there will be still 148GB for windows 10 partition.

2. Create a partition for windows 10 - 148GB (as described above).

3. Install windows 10 in newly created partition.

No need to move windows 7 to a HDD.
 
So windows 7 is on SSD - Disk 0. Correct?
You said, you have limited space on SSD, but you have 348GB of unallocated space there.

1. Extend partition C: and add more space to it. Leave enough space for windows 10 partition.
You can safely add 200GB to C: and there will be still 148GB for windows 10 partition.

2. Create a partition for windows 10 - 148GB (as described above).

3. Install windows 10 in newly created partition.

No need to move windows 7 to a HDD.
There were games on the SSD, and they will be going back once I install windows 10.
 
Ok, I got it to work! Thank you for your input and ideas! It was very valuable!

Especially thank you @SkyNetRising for mentioning the easyBCD! With it I figured out windows does not put the boot manager on the correct disk if you have multiple...


The solution to my problem was rather easy after this discovery:
  1. Resize the partition where the "new" windows goes to be the same size as the old.
  2. Install windows on the HDD I want with ALL other drives DISCONNECTED, as windows was putting its boot manager on Disk0 and Disk1 instead of Disk2, where I wanted to move the OS to. That was causing all the problems with windows behaviving very wierdly...
  3. After the install, reconnect the SSD
  4. Boot from a linux boot drive and use DD to copy the old partition over the new one.
  5. Remove SSD
  6. Reboot and everything works now!
 
Last edited: