Install on Second Hard Drive with startup boot option?

How it works

Each partitioned disk contain one small block called MBR. It resides at the beginning of the disk.

Now, the OS inserts their code to MBR to load their own bootloader. Windows does same, Linux does same.

They insert a small code pointing to actual location of bootloader. Like in Linux, This MBR contains Stage1 of GRUB (GRUB is a bootloader used in Linux) which loads a larger executable Stage2 that may located in other partition.

If you install Windows, and then Linux, GRUB Stage1 sits in MBR. Now other part of GRUB (the actual bootloader) contains the Windows bootloader location. Now when you select Windows from GRUB menu, Windows starts to load. This is called chain loading (GRUB loads first, then GRUB loads the Windows bootloader based on selection).

Coming back to your question

In your case, you have two MBR (because you have 2 hard disks).

Therefore, you have two options:

Easiest Option

  • Create a partition on 2nd disk.
  • Install Ubuntu on that partition & install GRUB on 2nd disk's MBR not on first disk's MBR. Be careful here. See below image (just for demo purpose), you need to do everything in (probably) sdb.

  • You select your already created sdb partition, edit, assign mount point /, and file system type ext4

  • Select boot loader location as sdb , not sda (see red colored section)

bootloaderLocation

  • Once done, reboot and you will be booted to Windows 7.

It happens because, your boot disk priority says to boot from first hard disk (Where we didn't change anything).

So open BIOS, change boot disk priority so that the disk containing Ubuntu comes first.

  • This time, GRUB will be loaded. And you can boot either OS.

  • Remove the disk, Windows 7 will boot directly.

  • Again plugin the 2nd disk, verify boot order from BIOS so that 2nd disk comes first. You can now boot any OS again.

Another Option

You can modify Windows bootloader also to load Ubuntu from 2nd disk. It is a bit harder, and since you don't want to touch Windows 7 at all, I am not recommending it.

Note: All tutorials available here talks about adding Ubuntu from same disk but different partition. I have not done it for across devices, you may need to adopt accordingly.

Here is a tough guide to do so.

There is a great GUI tool to edit boot loader called EasyBCD (It is free for personal use). Their guide about setting up Ubuntu using Windows bootloader.

You can have more resource on it Easy BCD Help: Dual boot Win7 and Ubuntu 11.10 -- "Add new Entry" for Ubuntu

I strongly recommend using GRUB as bootloader, as it is more flexible. May be you can set Windows as default boot option AND/OR reduce timeout value.


Easiest way to do this is as suggested above. First, temporarily remove your first hard drive (the one with Windows on it). Second, install Linux to the second hard drive (which for now is the only one connected). Third, put your first hard drive back in, so that you now have two hard drives installed, each with its own OS. From there, it's a simple matter of pressing a key at boot to select your boot drive. For example, with a Dell machine you'd push the F12 key at boot, and this would bring up your menu to select the drive you want to boot from.