I posted this on stackoverflow but was told that this is a more appropriate forum for this kind of question.

I have a situation where I need to test some stuff (hardware) on multiple operating systems (viz. Windows XP, Windows Vista and Windows 7 - 32 and 64 bit variants).

The idea is to have a suite of tests run so that the device is qualified for windows (http://www.microsoft.com/whdc/winlogo/WLK/default.mspx).

Due to a resource crunch, I have to make do with a limited number of machines and need to reimage them with different OSes and rerun the tests.

I initially considered capturing the test OS images using plain 'ol dd from Linux and rebooting into them using GRUB but the WLK software requires a working Windows machine on the client side hence this approach won't work.

I've managed to install XP-64 on C: and installed Vista/7 into another partition. Using the Vista bootloader and some of the command line tools from the Microsoft site (ASI - Automated Software Installer and imagex - the imaging tool), I'm able to work with this.

However, when I have to image the test partition with windows XP and automatically boot into that and back, I get numerous problems with the bootloader and can't really do it.

I'm interested in knowing if someone has automated this process and what's the recommended way of going about it. I'm a unix person myself and am not very knowledgeable about the tools available in windows to do this.


Why not take an image using something like g4l of each of the installs you need? As long as you have a server or machine in general on the network that can run an FTP server and can hold the images of each install (3-5 gigs depending on OS each). That's what I've done in the past for testing/qa environments even when it's separate machines. I take images so I can just slam down a fresh install in 10 minutes whenever I need.

  • I've never used g4l. It looks interesting. Looks like it works on windows properly as well. Have you used to to switch between Vista and XP? I was stumped when I hit that since the windows tools I found wouldn't work properly due to the bootloader changes. – Noufal Ibrahim Dec 12 '09 at 8:40
  • G4L used to be called Ghost For Linux, but switched to G4L when Norton threw a bit of a fit. I've used it to image servers, desktops, workstations, laptops... it's OS independent. It takes a snapshot of either the entire drive or just a partition on that drive and allows you to store it somewhere locally or off to an FTP server. Then allows you to do a restore. So initially you'd need to install each OS, and take a snapshot of each. Since you are taking a snapshot of the entire drive it captures the boot partition as well. – Dave Holland Dec 13 '09 at 23:10
  • One more thing worth noting - G4L will only create a backup or snapshot file that is equal to the size of the information on the drive. If it's a 75GB drive however your install is only a total of 5 gigs then the snap shot will only be a 5GB snapshot, so you don't have to worry about having a ton of drive space on a remote server for all the snapshots. – Dave Holland Dec 13 '09 at 23:11

Wouldn't it make sense, especially if you are a unix guy, to have multiple partitions on the hard drive, and install 1 version of windows to each partition, and then use Grub to boot each version of Windows?

Once you do your initial install and activation, you could dd each partition to another drive, and when you want to reset your image, just boot into linux and dd the partition back.

Windows will always take over the bootloader, but as long as each one is installed on a new partition it should let you boot them after modifying grub.

  • This would be the ideal situation and if I can't find a more 'native' solution, I'm going to somehow set it up like this. The problem is that the WLK software (client and server) which drives the whole process is windows only. If at any time, the client machine boots into Linux (which with your suggestion I will to reimage the partition), I lose contact with the server and the test cycle will stop. I will have no way of telling the client to do the imaging and reboot (since the server can only communicate with windows clients). – Noufal Ibrahim Dec 11 '09 at 19:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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