Archive for May, 2009

Posted By mart

Cloning Vista’s boot drive

It feels like it was yesterday when I purchased a 3.2GB hard drive (IBM Deskstar DAQA-33240), the biggest capacity available at that time, for (now) ridiculos price of 380 USD. It was year 1997 and I could not imagine I will be able to make it full…

Last weekend I ran out of disk space on my 160GB system drive. Since I was too lazy to search through the files and delete the unneeded ones, and since I had an extra 320GB disk in the cabinet, I decided to simply clone the drive. For this task I always use Acronis TrueImage Rescue CD – connect the new hard drive, boot from CD, select source and destination drive, start the process and within minutes it is done. Take out the old drive, boot to OS, one more restart (new hardware found) and it’s done.

Previously I was cloning either Windows XP or 2003 server and those worked without problems. This time it was my first attempt to clone Windows Vista – and it failed. After succesful cloning of the drive, Vista started booting but reported error that winload.exe is corrupted. After some googling I was able to find the answer and solution to this problem.  The trick is to modify the boot configuration data before the cloning operation to fool the boot loader.

1. open command line and run ‘bcdedit’ – it will return something like this (from Vista x64):

Windows Boot Manager
——————–
identifier              {bootmgr}
device                  partition=C:
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 3
resume                  No

Windows Boot Loader
——————-
identifier              {current}
device                  partition=C:
path                    \Windows\system32\winload.exe
description             Microsoft Windows Vista
locale                  en-US
inherit                 {bootloadersettings}
osdevice                partition=C:
systemroot              \Windows
resumeobject            {2c528445-aefb-11dd-abf0-86e4099117f6}
nx                      OptIn

2. we need to replace the string ‘partition=C:’ with ‘boot’ to make it work, so run following commands:

bcdedit /set {bootmgr} device boot
bcdedit /set {current} device boot
bcdedit /set {current} osdevice boot
bcdedit /set {memdiag} device boot

3. clone the disk and the problem with winload.exe is gone, Vista boots from the new drive.