PDA

View Full Version : Transfering an OS to another machine


Greyhound2004
November 11th, 2009, 02:08
This is the problem :-
I have a laptop with a 40G hard drive split into 2 * 20G partitions. One has OS X the other has Win XP on it. The Win Xp partition is crammed full of progs that I have bought (and paid for) off the net. I would like to transfer these to another computer.

What I know / have found out so far:-
1. You cant simply copy an image accross as that is set up for different hardware.
2. Windows reg key is locked to certain hardware components such as processor and mac address.
3. If you do a clean install and export the software reg keys you dont get them all !

Other possibilities :-
You can create a VMware of the native OS, but if you run this on another machine there will be driver issues as the hardware wont match.

Would appreciate help or advice on how to achive this.
Would it be best to 'hack' windows to represent the hardware changes ?
Or would it be easier to play with the OS in VMware?

Silkut
November 11th, 2009, 05:30
Hello,

What about Norton Ghost or Acronis or similar..? Afaik it doesn't screw up everything in the system/programs..

Greyhound2004
November 11th, 2009, 06:21
The actual imaging and transfer is not the problem, I have both of them. It is getting all the progs to work on a machine other than the original one it was installed on. I cannot simply re-install the progs as I no longer have the install codes and some progs have increased functionality by installing downloaded (paid for) stuff straight to the existing install. Thanks for the reply.

Silkut
November 11th, 2009, 07:27
Yes, my point was: normally you don't have to reinstall the progs, but still there is a step between what they say and what it does.. =/

naides
November 11th, 2009, 08:16
Two things to try:

Lookup the VMware vCenter Converter

http://www.vmware.com/products/converter/

Basically you can backup the whole physical Machine using a variety of BAckup packages, then mount it as a virtual machine inside VMware wherever you want.
Usually, it is Windows itself that has problems with the new hardware, requiring you to reinstall or update the license, but occationally some Software packeges are attached to hardware signatures and will refuse to work. In my experience, just a handful of them, and you can re-license them as needed by just reinstalling or repairing. Sounds involved but it is NOT. (Advantage: You can do it once or over and over again, experiment, try and see. Once a machine is virtual it will work everywhere and is quite portable)

Another thing I have done, is to backup the whole computer in old machine, restore it in new machine and then upgrade the OS in new machine. The upgrading does a lot to "adapt" windows to its new environment. Once again, any program that is protected by hardware signatures will cry foul (Usually less than 10% f them). You have to fix the problems one by one, but this is not unsurmontable. In fact, most of the stuff just transfers seamlessly.

Greyhound2004
November 13th, 2009, 13:17
Hi Naides,

Have tried using VMware vCenter converter standalone and got the following error message.
FAILED; unable to create a vss snapshot of the source volumes - it then gives a hex error code 0x80042306

What I did was to install and run the converter on the machine that I want to convert. I mapped the destination dive on the second machine so that I could send the image on the fly the the destination machine - is that where the problem is?

I'll try and find some more info on the net.
Regards,

disavowed
November 13th, 2009, 21:15
Try to stop as many processes/services as possible before starting the converter, and ensure that the Volume Shadow Copy service is started.

Patafix
November 16th, 2009, 11:30
Hi Greyhound,

this error code is VSS_E_PROVIDER_VETO... Do you have free space on the drive/partition you're trying to snapshot?
Disavowed is right: too much activity can block VSS to work.

Take a look at this link to try to solve your problem: https://secure.efoldering.com/support/index.php?_m=knowledgebase&_a=viewarticle&kbarticleid=16

Greyhound2004
November 16th, 2009, 13:41
Thanks for the help guys, I've nearly got it working. I used Acronis True Image to create a .tib which I was able to create over the network. I then used the standalone converter to create a virtual machine for use with VM 5 workstation.
I had to use FDISK to set the VMware machine active and it now boots with the Windows splash screen and then gives a BSOD and goes into an endless loop of rebooting. I cant read the error message. I've tried safe mode but eventually the result is the same. Do you think that this is due to the hardware differences between the original machine and the host machine ?
Is the next step trying to do a "repair" on the virtual machine using the Win XP install CD?

naides
November 16th, 2009, 21:46
Now your need to repair or update windows xp inside the virtual machine. That is the typical behavoir, if I remeber correctly, you see and error message from VMware stating that windows may detect "hardware" changes and refuse to work . . .

Greyhound2004
November 18th, 2009, 01:23
Still not working. Did a repair/upgrade on the virtual machine and that seemed ok. At one point it did ask me to "reactivate windows" then it just froze.
I re-created the virtual machine did the repair etc. but it now hangs at the splash screen. If I run the VMachine in safe mode it seems to hang when loading system32\drivers\agp440.sys
The donor machine was a laptop and did not have an AGP slot.
Curiously when i checked the processes running machine running vm workstation
the cpu usage was at 100% and vmware.exe was using 294M of memory.
Any Ideas?

Greyhound2004
November 19th, 2009, 14:58
I have installed a fresh install of WinXP in the same virtual machine as the one that I transfered from the laptop - (dual boot) that works fine. I'm convinced this is a hardware/driver problem.
Is there any way to compare the reg keys of the 'live' xp system with the reg keys of the 'dead' non booting system?
If the Hardware keys are in HKLM is it practical to copy these to the non working installation of XP?

UrgeOverKill
November 23rd, 2009, 19:28
get your old mac address and emulate it on your new machine. I'm sure you can find an emulator........

Snatch
November 30th, 2009, 00:08
I happen to be an expert at this exact scenario as I have gone through this mess and though not trivial is possible.

Perform a byte for byte image of the drive to the new target machine. Using a tool such as Winternals Administrator's Pak, correct all offending registry keys under HKLM\SYSTEM\CurrentControlSet. This part is a lot of work as you will have to delete unneeded hardware services from HKLM\SYSTEM\CurrentControlSet\Services, remove the actual hardware entries from HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum, remove no longer critical devices from HKLM\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase and HKLM\SYSTEM\CurrentControlSet\Control\DeviceClasses, also possibly correct the following keys: HKLM\SYSTEM\CurrentControlSet\Control\GroupOrderList and HKLM\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder.

For example, a common problem is switching an image from an AMD to Intel CPU which will certainly cause a bluescreen that can be fixed by deleting all stale offending entries which will allow for the new processor to be automatically recognized. The key is to delete the offending entries, as the system is generally able to automatically add any new hardware so long as the old hardware drivers are not interfering.

It would be wonderful to see a tool that can easily link together, find problems, manage and cleanup all the aformentioned hardware registry keys - I began such a project but never completed it. Microsoft has not publicly provided such a tool that would be incredibly useful for anyone doing this type of tinkering.

Greyhound2004
November 30th, 2009, 01:34
Hi Snatch thanks for the reply.
Ok let me see if I have this right, I look at the registry on the laptop this will be nearly the same as the one in the virtual machine and compare this to the working registry on the new host machine. Looking at the keys you have indicated.
I did find an article that made a reference to the AGP problem and it did solve that one but even with doing 'an upgrade/repair' on the OS it still wont boot fully. This project is possibly beyond my current knowledge but I cant really break anything so i'll experiment and learn. I guess its not in microsofts interest to develop such a tool as it gives a way of getting round their software protection.

reverser
November 30th, 2009, 20:54
The keyword is "sysprep".
http://www.hardforum.com/showthread.php?t=772307
http://shsc.info/MovingWindowsToNewHardware

Snatch
November 30th, 2009, 21:16
It should also be noted that you can load %windir%\system32\config\SYSTEM also known as the system registry hive if you have access from another live system. You can use regedit on another system against it by using the File->Import functionality while being sure to choose an appropriate <name> so you can find it under HKLM\<name>. Now you have free reign to edit all the keys as they are not in use but you will still need to watch for permission issues (Add the administrator account recursive full access to HKLM\<name> temporarily while you fix things up and then remove that entry).

Dont forget to clean it up when you are done by right clicking on HKLM\<name> and closing the hive to save changes and release the file locks.

cqccyh
December 2nd, 2009, 06:40
Thanks for posting,it helped me .. a bit..

Greyhound2004
December 3rd, 2009, 11:50
Hi Snatch, followed your suggestions and imported the 'system' part of the dead registry to the live registry as a new key called Greyhound now I cant delete this key - is this a permissions thing?

Snatch
December 3rd, 2009, 17:06
Ah I think your trouble is just that last part above: Dont forget to clean it up when you are done by right clicking on HKLM\<name> and closing the hive to save changes and release the file locks (you may need to close RegEdit actually).

Greyhound2004
December 4th, 2009, 09:04
Hi Snatch, This registry thing is pretty darn complicated. Even regASSASin could not delete the key so in the end I replaced thr registry with a back up. One thing I cant get my head around is the only way that you appear to be able to edit the dead registry is to import it to a 'live' registry. OK, how do you import that key back into the dead registry when it wont fully boot?
Is there a way of editing a reg key say from the windows console? The reg keys are in system32/config/system or system.sav I think .sav is a backup file and that contains HKLM and keys related to hardware specific stuff on the machine. Is there a Dos or comand line tool that can read the system file and display the info as reg keys and allow you to edit them.
I'll do a search for more info on the recovery console as well.

Greyhound2004
December 5th, 2009, 03:19
Update:
I missunderstood how to use load/unload hives and think I have it now, when you unload a hive it writes it back to the original location? is that right.

Snatch
December 7th, 2009, 02:51
AFAIK, regedit must be used to export the full registry hive to a standard text readable file. You can actually use this technique to rebuild an entire registry which will end up compressing it, even by a significant percentage typically if the registry has been in use for a long period of time. To do this export as a .reg file and then import the .reg file as a hive, followed by unloading the hive. Compare file sizes after doing this to see the savings - though be careful in a couple special situations permissions may be compromised. The .SAV files are backups created on installation I believe so they are generally not of too much use unless you want to restore back to a very old copy. I believe unloading the hive writes it back to the original location but as I hinted, you may still need to close regedit or even reboot in the worst case. So in effect unloading will import your changes back into the registry.