Note: Founded upon Vector 5.1.1 SOHO, but naturally should work on 5.8+. Jan-07
WhyWhy would someone want multiple, independent WinXP installs? Well in my case it was keeping one install neat and tidy, and the other for app testing and gaming i.e. keeping nasty DRMs like Starforce off at least one of my WinXP installs.
HowGrubWell first your going to need to install Grub. Just simply install Grub 0.95 from
slackware-10.1/extra/ via Gslapt and then run
grubconfig as root in your terminal of choice.
Edit: For more specifics, see also Moe's
HOWTO: Switch from LILO to GRUB bootloader on VL. Jan-07
PartitionsWindowsXP
requires installation to a primary partition, so multiple primary partitions are need for a multi-WinXP system. One hard drive can have a maximum of four primary parititions, or a maximum of three with the presence of one extended partition. The four primary partitions would be labled hda1, hda2, hda3, and hda4. The first logical partition of an extended drive is labeled hda5. Note: The maximum number of XP installs on a single hard drive using this method is three, do to the necessary Linux install. I recommend cfdisk for setting up partitions.
And example setup for a dual WinXP setup:
hda1 Boot Primary NTFS [^A] 15726.74
hda2 Primary NTFS [^B] 22002.63
hda5 Logical Linux swap 1200.90
hda6 Logical Linux ReiserFS 8496.72
Pri/Log Free SpaceInstall WinXP to hda1Install WinXP to hda1 as normal.
Install LinuxNow install your distro of choice, in this case VectorLinux 5.1.1SOHO to hda6, with Grub v.95 installed via GSlapt from a Slackware10.1 source.
In Linux, open up a terminal as root and type:
# grub
# hide (hd0,0)
# quitYou can verify hda1 (hda0,0 in grub notation) is now hidden by typing
# fdisk -l or going into cfdisk and checking for a change from
NTFS to
Hidden HPFS/NTFS.
Install WinXP to hda2Reboot the machine and boot from the WinXP CD to install WinXP, but this time to hda2. The installer will ignore hda1 as an unknown filesystem and default to hda2 as its C:\.
Configure GrubReboot after the hda2 WinXP installation, and boot up using your VectorLinux CD (or your distro of choice) to boot to your Linux install. Now it is time to configure Grub by editing your /boot/grub/menu.lst file. You must hide the two WinXP installs from each other every time you boot to either of them. This is very simple using Grubs
hide and
unhide command.
An example menu.lst, using the same dual WinXP setup:
# Start GRUB global section
default 0
timeout 5
#
title WindowsXP (on /dev/hda1)
unhide (hd0,0)
hide (hd0,1)
rootnoverify (hd0,0)
makeactive
chainloader +1
#
title WinTesting (on /dev/hda2)
unhide (hd0,1)
hide (hd0,0)
rootnoverify (hd0,1)
makeactive
chainloader +1
#
title VectorLinux (on /dev/hda6)
root (hd0,5)
kernel /boot/vmlinuz root=/dev/hda6 ro vga=773Hope this is of help to some. A big thanks to saikee of JustLinux for his input. Would probably still be googling for a solution without his help. Thanks! I'm still trying to figure a way to get Win98SE on this NForce4 machine. If/when I do, I'll be sure to make another HowTo for it too.

Best Regards,
DrCR
_____________
VL 5.1.1 SOHO, AsusA8N5X, 3500+ Venice, 2x512MB CorsairXMS, 120GB, 320GB