Yes, installing Windows NT and Red Hat is very possible on your 20 gb hdd.
I seem to recall that the default install of Windows NT takes less than 200 Mb. Win98 full install is around 200Mb, Office 97 is around 200 Mb, Windows swap file could be 200Mb, etc. RH Server with everything (not PowerTools CD) I think is less than 2 Gb. So the size of your hdd will not be a problem. Use your own judgement about the sizes - perhaps 3 Gb for NT and/or Windows 98 and 3 for RedHat and then some space for whatever else you fancy - MP3s, ftp directory, etc. - it very much depends on what else you want. Figure on the software you plan to use and then reserve some extra for each OS.
You might want to take a look at the Large Disk HOWTO at http://www.linuxdoc.org
(http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/Large-Disk-HOWTO.html) - there are some limitations with earlier version of linux I'm not sure if this applies to recent RH -- you could always try installing and ask later. You should take a look at some LILO documentation. Look in the mini-HOWTOs on the above site or try the online man pages here: http://linux.com.hk/man/showman.cgi?.../man/index.inc
(it's a bit far from me but a good site) and search for lilo
****Be aware that the RH server installation by default wipes out everything on all available hard disk space so choose a different option for dual-boot situations such as the custom or Workstation with some selected server options.
If you choose to dual-boot only with Windows 98, setup is easy. Install Windows 98, then Linux and just add Windows as a second OS to your lilo setup in the installation routine. I recommend that you start here.
If your feeling very brave and willing to possibly spend some hours tinkering, try the following to dual boot with Windows NT. Although I have played with Windows NT, I haven't tried dualbooting with Linux - I took the following (paraphrased, commented and editorialized by me) from the Red Hat Certified Engineer Study Guide. However, I haven't seen this written anywhere else so I thought I'd share it.
With Windows NT, booting is somewhat trickier because Windows NT has it's own bootloader. I recommend you do some reading before you attempt this -- your on your own here!
1. Windows 98 AND Windows NT should be installed. Installing NT after 98 creates the boot.ini file in c:\. there may be another way of creating the boot.ini file if you only want to install NT without 98 but I don't know it. In any case if you only install NT, beware of using the NTFS because Linux does not write to it reliably yet (as far as I know). It does use the fat32 filesystem aka vfat in linux, without any problems.
2. Now install linux and install LILO on your **ROOT** partition -- NOT on the Windows NT partition. Configure lilo to boot only linux. You can do this by creating a plain text file, /etc/lilo.conf, with the following lines (replace hda6 with the correct designation for your linux root partition):
Next, type lilo at the command prompt to install lilo in the root partition with this configuration.
[IF you are installing LILO from an installation routine (I would assume this is true) it may require that you reboot -- make sure that you have a boot disk! You could also use this boot disk to finish the dualboot installation by using a modified version of the following command in step 3a below:
dd if=/dev/fd0 of=/bootlnx bs=512 count=1
3. a. **Before you reboot** you need to copy the bootsector from /dev/hda6 to a file. Use the following command:
dd if=/dev/hda6 of=/bootlnx bs=512 count=1
This will create a file called bootlnx in your root directory.
b. Mount your Windows partition and copy this file to your windows partition in the same directory as the boot.ini file.
c. Edit your boot.ini file and add the following line to the bottom of the file:
c:\bootlnx="My Linux OS"
Now once you reboot, Linux should be your last option.