Scenario: You have Linux already installed but want to dual boot it with Vista on the same hard drive.Summary of tutorial: We’ll dual-boot Ubuntu 7.04 with Vista. With Ubuntu already installed and owning the entire drive, we’ll use the latest version of GParted to shrink the Linux partition to create space for a Vista install. Then, as Vista’s MBR will then overwrite GRUB, we’ll reinstall GRUB to the Linux partition and use EasyBCD to modify the Vista bootloader so that it will boot Ubuntu.This tutorial is an updated version of our previous Ubuntu/Vista dual-booting workshop. The main differences with this version are the newer versions of Ubuntu, GParted and EasyBCD, and we bypass using the DISKPART utility during the Vista install.
This tutorial has been tested on a VMWare Workstation 6 machine and an ASUS P5AD2-based Intel system with 2GB RAM and an 80GB Seagate SATA drive.
Preparing a Linux system to dual boot with Vista is very much like preparing an XP system. You first have to shrink the existing OS partition (in this tutorial, Ubuntu) to make way for Vista.
We’ll use a third-party application called GParted – the GNOME Partition Editor. GParted is available as a system application on the Ubuntu Live CD (System > Administration > GNOME Partition Editor), but we’ll use the GParted LiveCD in this workshop.
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.3.4-7.
Boot the Linux machine from the GParted LiveCD. Depending on your system, you should just need to select the auto-configuration boot option.
During boot, press Enter twice when prompted to select the keymap and language settings. When the main GUI loads, right-click on the main partition (depending on your setup, probably /dev/sda1) and select Resize/Move.
Use the slider to create sufficient space to house the Vista installation (about 10GB) then click Resize/Move.
The resize becomes a pending operation – click Apply to commit the change. Once that’s done, right-click on the /dev/sda1 partition (or the equivalent – the partition you just resized) and select Manage Flags. This partition is marked as a boot partition, and this means that the Vista installation won’t work properly while there’s a bootable non-Windows partition on the system. Remove the boot flag and click Close.
And that’s it – GParted really is one of the best partitioning tools out there. Quit GParted and double-click the Shutdown icon, then shut down the system. Then, fire up the machine with the Vista install DVD.
During the installation, Vista will overwrite the MBR and GRUB will be lost. When you the machine reboots, Linux is nowhere to be seen.
Once Vista is installed the GRUB bootloader is gone and you have no way of booting Linux. However, if you simply reinstall GRUB to the MBR it will overwrite the Vista bootloader and you’ll have to manually configure GRUB to boot Vista. This can be done by the way – check out our workshop on dual-booting Vista and Ubuntu where Vista is installed first.
However, in this tutorial we’re going to keep the Vista bootloader and modify it to boot Ubuntu. But, we can’t do this without GRUB, so we’ll install it to the partition which was the Ubuntu boot partition, rather than to the MBR.
To do this, we need to boot the system using the Ubuntu Live CD.
When the CD loads, launch a terminal window (Applications > Accessories > Terminal).
In the terminal, type:
This will put you in superuser mode and launch the GRUB application.
To find the partition with the GRUB boot files, type in:
The response should be “(hd0,0)” or something similar – this is where you need to reinstall GRUB.
Set this location as root for the current session:
Then type in:
This will reinstall the GRUB bootloader to disk 0, partition 0. If you type in “setup (hd0)” then GRUB will be reinstalled to the MBR and will overwrite Vista’s bootloader.
Type in “quit”, exit the terminal window, and you’re done. Reboot the system and boot into Vista (at this point, you still won’t see any option to boot into Linux).
Ceate the Linux boot option in Vista
Boot back into Vista. Download EasyBCD 1.60 and install it. EasyBCD is third-party GUI front end to the BCEDIT bootloader editor in Vista.
Then launch the EasyBCD program. Go to Add/Remove Entries in the left menu, and then the “Linux/BSD” tab.
In the Linux/BSD tab, under the “Type” dropdown menu, select Grub. The default name is “NeoSmart Linux” but you can change it to “Ubuntu” or whatever. Click the Drive drop-down menu and choose the correct partition – if you installed GRUB to (hd0,0), then select Drive 0, Partition 0.
Select “Add Entry” and then “Save”. Exit EasyBCD and restart the machine.