Multiboot Linux with NT and Legacy Windows.

 

This setup with variations will support, SIMULTANOUSLY:

 

A minimum of a 4G disk is recommended, though 2G disk is possible. NT /Linux can also be installed on second or even third disks.

 

1) Install Win9x or DOS/WFW then Win9x on a 400 to 1G boot partition as FAT16. Don't enable Win9x Large Disk support. This means FAT32. Note(1). Don't create any extended partition.

 

2) Boot NT install from NT startup floppies & CDROM (CDROM, hard disk and Net installs are less reliable Note(2) and slower). Only create 800 to 1.2G partition as NTFS. NT will automatically detect the disk is bigger and create an Extended Partition the free space of the drive. The selected partition will be thus the first logical drive. Never create an NTFS partition smaller than 450M. Create an NT repair disk.

 

WARNING: Though NT doesn't use Autoexec.bat & Config.sys and OS/2 equivalents normally, it does read them and load stuff into registry during install. If you don't want this (and you won't), temporarily rename these files till NT is installed!

 

 

3) Check all the existing OS will boot. In any OS change attr of BOOT.INI to allow edit. Rename BOOTSECT.DOS in C:\ to BOOTW95.B or BOOTWFW.B or BOOTW98.B etc as required. Edit lines with C:\ in BOOT.INI to be C:\BOOTW98.B or whatever you named BOOTSECT.DOS to. Add a new line at the end of the file C:\BOOTRH60.B="Red Hat Linux 2.2 Dist 6.0" (the bit in " " can be anything. Reboot and check that the entry for legacy windows still works (i.e. DOS or Windows rather than NT4.0 Workstation ).

 

4) Boot Linux and install. Create at least (using Linux fdisk or disk druid)

Drive Mount Point Label Type Size

HDA6 (Note 3) / Linux Linux Native (ext2 / 82) 800 .. 1200M

HDA7 (Note 3) (leave blank) Linux Swap (ext2 /83) min = Installed RAM up to 127M

Additional options on very big disks

HDA7 (Note 4) /usr Linux Native (ext2 / 82) 800 .. max 4G

HDA8 (Note 4) /home Linux Native (ext2 / 82) 200 .. max 4G

HDA8 (Note 4) /var Linux Native (ext2 / 82) 200 .. max 4G

 

This scheme can be adapted for any number and type of disks. (note 5)

 

5) During Linux install select the Linux boot partition (really 2nd logical drive in extended paritition) as destination for LILO. This will be something like /dev/hda6. DON'T select the MBR. You must create startup floppy.. or you are doomed!

 

6) Boot Linux . Mount the DOS FAT16:

mount /dev/hda1 /mnt/C (for example)

  Copy the linux boot sector from the logical drive:

dd if=/dev/hda6 bs=512 count=1 of/boot/BOOTRH60.B (hdxx may be different. Note CASE)

  Then copy to DOS

mcopy /boot/BOOTRH60.B /mnt/C (if this is where you mounted DOS/Win9x partition)

 

Now shutdown -r now and select Red Hat option on NT's boot loader.

 

Finally:

If you recompile the Kernel or do an Upgrade the Boot Sector file needs to be updated. If you recompile a lot you can edit /etc/lilo.conf to make LILO update the file.

 

If you install any NON NT OS after this:

1) Let the OS wreck the MBR

2) Boot Linux from floppy.

3) Use dd script as above but with /dev/hda1 (i.e. MBR) and a different destination. Copy new boot sect file to DOS. Add entry to NT's BOOT.INI in DOS partition.

4) Boot original NT install Floppy, Run NT Repair and ask only to fix boot. This puts back the MBR for NT.

5) NT's boot loader is back in business with a new OS added.

 

Intalling NT Versions:

Always start at oldest and progress to newest as the NTLDR is backward compatible but not forward. i.e. Win2K boot files let NT3.51 boot but not vice versa. Only same version level of NT can share "Program Files". If different NT versions must be in the same partition you can edit registry to make "Program Files" be "Win2004 Programs" etc. This needs to happen before anything is put in the folder .... Or you need to edit a big lot more.