If you install the boot loader on your Linux partition (i.e., not as the MBR on the drive), then you can copy the boot information from that partition to a file, and use that file as a boot image referenced by XP's
boot.ini file. This enables you to boot into Linux from the XP OS selection menu.
Specifically:
1) Install
lilo (or GRUB) as the boot image on your Linux partition or drive, as you may already have done.
2) Confirm that you can use that installation to boot Linux by using your BIOS "boot selection" option to select it as the boot image to use, and boot into Linux.
3) Create a file containing the boot image by (as "root") running the
dd command vis:
Code:
# dd in=/dev/hda3 of=/tmp/linux.bin bs=512 count=1
Where, of course, you use the correct value for
a3 (e.g.,
a for the XP MBR,
b for the MBR of a second drive, etc. The
a3 would be the MBR of the third partition.)
4) Copy the
linux.bin file from
/tmp to the
C: drive of XP. (A USB drive or floppy is handy for this, or a FAT formatted partition.)
5) Boot XP (if you're not in XP after you did the copy) an use "Explorer" to change the attributes of the
boot.ini file so you can edit it. (I.e., turn off the "read only" flag.)
6) Edit it so that it looks something like this:
Code:
timeout=5
default=C:\linux.bin
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP" /noexecute=optin /fastdetect
C:\linux.bin="Linux"
6) Reboot, and select the "Linux" option from the boot menu. If all went well, you should be in Linux via the XP boot loader.