Try pressing DEL or ESC or F2 or whatever key your boot screen says you need to access the BIOS Setup and see whether you can change the boot order to boot from the second hard disk. This varies from one BIOS to the next however the relevant information will be in your Motherboard manual.
Once you've changes the BIOS settings, save them and reboot. When the lilo screen appears, press ESC to get the lilo prompt and enter:
linux root=/dev/hdb
Followed immediately by the number of the partition Linux resides on (1 for first partition, 2 for second, etc.). This will probably be 2. Press ENTER.
Once the machine has booted you should find yourself at a login prompt of some kind. Log in as root and, using whichever text editor you can (kedit, gedit, kate, emacs, vi) edit /etc/lilo.conf file so that the line root=/dev/hda2 reads root=/dev/hdb2 instead. You will also have to change boot=/dev/hda to boot=/dev/hdb and other=/dev/hda1 to other=/dev/hdb1. Any other references to /dev/hda will need to be changed to /dev/hdb. Once complete, add the lines:
map-drive=0x80
to=0x81
map-drive=0x81
to=0x80
under the other=/dev/hdb1 line. This will swap the Master and Slave in the BIOS so that the Windows boot loader can function (Windows can't boot off the second hard drive). Once done, save and exit whichever text editor you are using (if emacs then CTRL+X followed by CTRL+S to save and CTRL+X followed by CTRL+C to quit) (if vi then ESC followed by :wq to save and quit) and run lilo to install the modified boot loader. Next open up /etc/fstab and change any mention of /dev/hda to /dev/hdb. Save this file as well.
Reboot, lilo should boot both Linux and Windows XP fine.
I apologise if I have told you lots that you already knew however I have tried to cover everything (I have probably still forgotten something).
Good luck.
|