Back to IT Page

MultiBoot with NT Boot Loader


This page briefly discusses a technique you can employ to get your PC to (safely) boot into multiple operating systems using the Windows NT Boot Loader. Using this method I have gotten my own PC to successfully boot into MS-DOS 6.22, Red Hat Linux 5.1 and Windows NT 4.0 via NT Boot Loader v4.0. I do not go into the details of why this procedure works as this would require a much more detailed discussion nor do I intend on discussing the many ways of multibooting with different system configurations.

Firstly I will describe my own system setup. On a single 4.3 Gbyte hard drive I have one primary partition of 2.00 Gbytes and an extended partition of 2.3 Gbytes which is further divided into three logical partitions. On the primary partition I keep my NT and MS-DOS files while on the first logical partition (formatted FAT) I hold files which I share between NT and Linux. The other two logical partitions hold the Linux root files and the system's swap space.

Before you begin, make sure you read through this article thoroughly and that you understand everything in it. If you have any doubts it is best to leave it or ask someone with knowledge on the subject for their advice. I have successfully carried out this procedure on my own PC, however if your system varies in description considerably or you want to apply some of what I have to say here to a different Boot Loader then you are ON YOUR OWN. Partitioning a hard drive is a risky business at the best of times and as such destroying important data is a reality if you are not careful.

IMPORTANT NOTE: This article assumes that your first primary partition is formatted as FAT. Using any other file system such as NTFS will simply not work. The reason for using FAT is that every operating system I have mentioned here is able to read it and since all the boot files for the various operating systems will go there it is essential.

Dual Boot NT and DOS with NT installed first:

A lot of people will tell you that if want to be able to run both MS-DOS and NT on your computer then you should install DOS first. There is good reason for this and if you are able to do so then your workload will be eased considerably since NT will automatically update its "boot.ini" file if it finds that DOS is already installed on the computer. However in some cases such as my own you may already have NT installed and still wish to be able to run DOS. Here's what I did:

Directly boot into your MS-DOS setup disk via your system BIOS and follow the normal procedure for installing the O/S. Note: MS-DOS must be installed into the root directory of the primary partition, it simply will not allow you to install it anywhere else. Once installation has been completed you will be asked to reboot. The next time you reboot you will boot directly into DOS. Do not be alarmed as your NT system and personal files have not been overwritten. What has happened is that the Master Boot Record (MBR) has been overwritten by DOS. In order to get NT to boot first again you must restart your system using your Windows NT Setup disks. During Setup, select R to repair Windows NT. Now this is the important part; you need only repair the Windows NT boot sector. Do not choose to inspect the registry files, the Windows NT system files, or the Windows NT boot environment. Once you have repaired the boot sector your computer will boot into NT as before. To add your newly installed MS-DOS O/S to the list of bootup options you will need to edit the boot.ini file. This file is located in the root directory of the boot drive (in most cases this will be your C:\ drive), and is a hidden, read-only, system file. Add the following line to the file c:\bootsect.dos="MS-DOS". And that's it! The next time you reboot you should have an option to boot into DOS.

Aside: You should be able to dual boot with Windows 95 also once DOS has been installed using the procedure above. To install Windows 95 boot the system into DOS and install as normal. I am told that Windows 95 is NT - aware and as such will not overwrite the NT boot loader information held in the MBR. Note that I have not tried this procedure myself so I cannot give any assurances that this will work.

Dual Boot NT and Linux with NT installed first:

Now for the good part: getting Linux running on your machine. First of all you need two extra partitions on your hard drive for the Linux operating system to reside on. The first partition is where you'll keep your Linux file system (most likely ext2) and the second is for its swap space. There are a number of ways you can partition your hard drive. Some people like to use a DOS program called "First Interactive (Non-destructive) Partition Splitting program" or fips.exe, or even "Disk Druid" which is provided as part of some Linux distributions. Here's what I did:

Using the Disk Administrator that comes with Windows NT I partitioned my "extended" partition into three "logical" partitions. A bit of explaining is in order. In the world of IBM PCs and compatibles, the first two gigabytes of a hard drive is known as the primary partition and anything above this is considered an extended partition. An extended partition can be subdivided into a finite number of logical partitions. Our new Linux installation will reside on one of these logical partitions, whereas NT and DOS will reside on the primary partition (this is for good reason as was explained in the previous section). So getting back to where I left off: I partitioned my extended partition, which consists of a little over 2 gigs into three logical partitions: one 1 gigabyte partition for my Linux root file system; one 32 Mb partition for the Linux swap space (more than enough ;-), and the leftover partition I use to share files between Linux and NT
IMPORTANT NOTE: partitioning your hard drive in this way will wipe out any information contained on your extended partition. Backup any files you may have here before you attempt to partition using Disk Administrator; otherwise use a non-destructive partitioning program like FIPS.

Once you have created your logical partitions it's time to install Linux. Most modern Linux distributions allow you to boot from a CD-ROM containing the media. So the next step is to boot from the installation media containing Linux and follow the prompts until you get to the point where it asks you to select the partition to write Linux to. Choose your newly created logical partition; this will be called either hda5 or sda5. (In Linux logical partitions begin with the number 5). Next select your 32Mb partition for use as swap space; hda6 or sda6. Once you've finished installing the various packages and things you'll be prompted as to where to install the Linux boot loader i.e. LILO. ** This is the important bit ** Choose to install LILO onto the superblock of the the partition on which Linux resides, i.e. hda5 or sda5. By default LILO will want to install itself on the MBR but this wont work for our purposes because the NT boot loader will reside there instead.

Assuming everything has gone to plan the next time you reboot you will be prompted with the NT Boot Loader as before. You won't have an option to boot into Linux just yet so this is our next step: adding a Linux option to the Boot Loader. Again as with most things there are a number of ways you can do this but the easiest way I find is to use a Windows program called bootpart. Bootpart will let you add any number of partitions to the NT Boot Loader. In effect what it does is to create a 512 byte file that points to the boot sector of the partition you want to load. It also automatically updates the boot.ini file so you won't have to go tinkering with that either.


[Main Page] [IT Stuff] [Barca] [Art] [About Me] [Links]

© Copyright 2000 - David Hernández