How to dual boot Windows Vista and Windows 7 (Vista installed first)

Got your hands on the Windows 7 beta and want to dual boot it alongside Windows Vista? Here’s our step-by-step tutorial to get you up and running with Microsoft’s latest OS.


You want to install Windows 7 on your PC alongside your Vista installation on the same drive.

Tutorial Summary: We need to shrink the Vista partition on the hard disk and create enough space for an installation of Windows 7. This can be done in three ways – using the GPartEd Live CD the DISKPART utility on the Windows 7 DVD or the Disk Management utility within Windows Vista.

We’re then going to install Windows 7 Home Premium beta on a system running Vista SP1 Home Premium. This tutorial was tested on a VMWare Workstation 6 virtual machine.

[#PAGE-BREAK#Create Free Space for Windows 7#]

We assume that before you start this tutorial you have backed up the drive (partitions and data) that will host the two operating systems.

Your first step will be to modify the Windows Vista system partition to make space for XP using GParted

The GParted Live CD ISO is available here – burn it to CD and boot the system from the disc. The version we used was 0.4.1-2.

When you boot from the GParted LiveCD depending on your system you should just need to select the auto-configuration boot option.

Option 1 – Using GPartEd

During boot press Enter three times to accept the defaults for keymap language and graphics settings.

When the main GUI loads right-click on the main Windows Vista NTFS partition (depending on your setup probably /dev/hda1) and select Resize/Move.

Use the slider to reduce the partition size and free up enough room to install Windows 7 (at least 10GB) and click Resize/Move.

The changes haven’t actually been made they’ve just been scheduled to run. To commit the changes and resize the partition click Apply. GParted will ask to confirm the changes – hit OK and away you go.

Option 2 – Using DISKPART

Boot the machine from the Windows 7 DVD. Select the appropriate language and then “Install Now”.

On the product key page press SHIFT + F10 to launch a Windows PE 2.0 command window. Then type in DISKPART and press enter to get into the DISKPART utility.

Now type in LIST VOLUME – this gives you a readout of the volumes available on the system. Select the main Windows Vista volume by typing in SELECT VOLUME 0 (in most cases it will be Volume 0 – in our lab in was Volume 1).

Now type in SHRINK. Windows 7 will reduce the size the selected Volume by around 50%.

Option 3 – Using Disk Management

Using the Disk Management GUI is really no different to using DISKPART (it’s the GUI frontend to the DISKPART utility) but using the GUI does mean that you can make the changes within Vista before rebooting to install Windows 7 without needing to use DISKPART on the Windows 7 DVD.

Right-click on Computer and select Manage. In Computer Management expand Storage and select Disk Management.

Right-click the primary partition (the one you need to make space on) and select Shrink Volume

The default values which Vista provides represent a fairly aggressive shrink – as long as the values will give you enough space to install Windows 7 (at least 10GB) accept the defaults and select Shrink.

Vista will churn away for a moment and then you’ll see the newly-created free space on the primary disk. Now you can reboot and install Windows 7.

[#PAGE-BREAK#Now Install Windows 7#]

If you used the GParted LiveCD to shrink the Vista partition you’ll need to reboot the system from the Windows 7 install DVD. If you’ve used DISKPART then you just need to click “Install now” and continue the installation. There will be two install options – Upgrade and Custom – select Custom.

Once the install gets to the install location there should be at least two options: a partition marked as Primary and Unallocated space. Select the unallocated space and click Next. The install will then commence.

[#PAGE-BREAK#Managing the Bootloader#]

Once Windows 7 is installed and the system reboots you’ll be presented with a boot menu with two options: “Windows 7” and “Windows Vista”.

Windows Vista and Windows 7 use the same bootloader so the Windows 7 boot entry is an addition to the existing bootloader rather than a replacement as with a Windows XP dualbooting scenario.

This makes life pretty easy – Vista and windows 7 and perfectly happy to co-exist. Having said that they do read the bootloader slightly differently.

Boot into Vista and launch a command prompt (Start All Programs Accessories Command Prompt). If UAC is turned on (and even if you’re an Administrator) right-click Command Prompt and select “Run as administrator”. In the command window type in BCDEDIT and press Enter.

Vista references the Windows 7 partition in the bootloader as a mapped drive. For comparison reboot the system and boot into Winndows 7. Open an admin command prompt and run BCDEDIT.

As you can see Windows 7 references the Windows Vista partition a bit differently – it uses the logical path rather than a drive mapping. This doesn’t represent a problem between the system – it’s just different. The one implication is that if you change the drive letter of the Windows 7 partition in Windows Vista the entry in the bootloader will be incorrect and Windows 7 won’t load.

To make changes to the bootloader in either system you can use EasyBCD which we’ve used in most of our dualbooting tutorials. It’s probably fine in this case too but as EasyBCD doesn’t recognise the full physical paths which Windows 7 makes use of in the bootloader we’re just going to use the BCDEDIT utility rather than risk damaging the system.

the first thing to do is to make a backup of the bootloader configuration – this is easily restored if anything goes wrong. Type in the following command:

bcdedit /export PATH:FILENAME

If you need to restore the bootloader use the /import switch instead of /export.

To delete an entry in the bootloader for example if you want to remove the entry for Windows 7 and stop dualbooting you need to identify it first.

Run BCDEDIT and look for the identifier value for the Windows 7 entry then type in the following command:

bcdedit /delete [identifier] /cleanup

This will remove the relevant entry – reboot and the system will boot into the one remaining OS. You can then use GPartEd DISKPART or the Disk Management utility to delete the partition and extend the system partition to take over the space.