Dual Boot Windows and Linux: Single and Multiple Hard Drives

Nov 21
20:30

2005

  • Share this article on Facebook
  • Share this article on Twitter
  • Share this article on Linkedin

The technical side of the internet can be a frustrating place for a computer novice that is trying to get a simple job done. Finding clear instructions on how to setup a dual boot for Windows and Linux is next to impossible. This article presents simple dual boot instructions for Windows and Linux for both single and multiple hard drive configurations that actually work.

mediaimage
The internet is full of technical articles,Dual Boot Windows and Linux: Single and Multiple Hard Drives Articles many of which are way too complicated for the average computer user who just wants to solve a simple problem. If you pay close attention, the internet is also a place where the “gurus” spend a lot of time yelling for help in discussion boards and forums. So don’t feel bad, nobody has all the answers.

So you want to dual boot Windows and Linux on the same computer—it is really quite easy. I only have enough room here to tell you the most common way to do this on a single hard drive or using multiple hard drives. Obviously then, there are many ways to get the job done, but there are some critical things you should know. Let’s start with some critical information.

Windows and Linux: Same Hard DriveThe windows operating system MUST occupy the master boot record (MBR). Linux, on the other hand does not have to. In this scenario, you must install windows first! After Windows has been successfully installed, then you can install Linux. This is critical! The Linux “boot loader” is called GRUB. When you install Linux—MAKE SURE YOU DO NOT INSTALL THE LINUX BOOT LOADER TO THE MBR.

Configure the Windows Boot Loader: A Two Step ProcessIt is also possible to use GRUB to dual boot Windows and Linux on the same drive but this is a bit more complex—the Windows boot loader will get the job done. In the following commands, you will create a copy of the Linux boot sector and then save it in a file in the top level directory under Windows (C:).

Step 1: LinuxFrom the shell in your Linux installation (boot from your installation disks):Execute the following shell command, replacing /dev/hda3 with the location of your Linux boot partition.shell# dd if=/dev/hda3 of=/bootsect.lnx bs=512 count=1Copy the new file—bootsect.lnx—to a floppy disk and reboot to Windows.

Step 2: WindowsCopy bootsect.lnx to C: in Windows. Then execute the following command at the DOS prompt.C:> attrib -H -R -S boot.iniEdit boot.ini so that the first two lines are:[boot loader]timeout=30After the last line, add:c:bootsect.lnx=“Start Linux”That’s it, you are done! Reboot your machine and you will see a menu allowing you to select either Windows or Linux. Congratulations.

Windows and Linux: Two Hard DrivesThis is also quite easy. In this case, you will boot to the Linux drive. We will add Windows to the Linux boot loader (i.e., GRUB). GRUB is my favorite boot loader.

Edit the /boot/grub/grub.conf file. One of the very first lines should contain:timeout=30After the last line add:title Start Windowsmap (hd1) (hd0)map (hd0) (hd1)rootnoverify (hd1,0)makeactivechainloader +1Reboot your machine to the Linux drive and you will see a menu allowing you to select between Linux or Windows. Nice work!This article is obviously short and does not include any explanations of how these commands work. There are variations on what I have shown here depending on your hardware setup, but I believe that these are the most common and should get the job done nicely. I would be happy to direct you to additional resources if this does not work for you.