I recently bought a WD 1200JB HD, and have it attached to a Promise Ultra133 TX2 controller card. As well, I have my original 8.4GB drive attached to my primary IDE channel on my motherboard (which I am currently using to run Win2000).
What I want to do is install WinXP and Slackware onto the new WD drive, but boot my system, using LILO, from a small /boot partition on the old drive.
I figure that this wouldn't be a problem for Linux as I can (worst-case scenario) pass the kernel extra parameters to tell it where the extra IDE channels on the Promise controller are located, and then boot from the appropriate partition. Currently I can load Linux 'recovery' disks and pass this information and it sees my WD drive just fine. When I don't pass it those parameters, it doesn't see the WD drive.
My biggest concern, however, is with Windows. My biggest concern is whether installing LILO to the old drive will still be able to 'see' the Promise controller, and the WD controller.
Anyone have any insight as to whether this approach will work, or whether there is a better approach?
Currently, I'm able to boot Slackware from the installation disk... but I haven't actually installed it yet. I just boot into it and do nothing. :^/
Anyways, I read somewhere to check the listing of /proc/pci and see whether my controller card is listed... and it was. So it went on to tell me that I need to take the values provided by the listing and pass those parameters to the kernel when I boot... which I have.
So, when I boot into Linux from the CD (I have also done this from old Slackware boot/root disks from a previous installation a few years back), at the 'boot:' prompt, I enter:
It loads fine, if finds the new drive on the Promise controller, I can mount it, and life is good. So from that end I'm not too worried about booting into Linux.
My biggest concern is with Windows XP. Not so much whether I can load it from LILO (although it IS a concern), but moreso whether LILO will be able to SEE the Promise controller and the new hard drive at all.
Under Linux, my new drive is listed as /dev/hde since it's the Primary drive on the 'first' channel of the Promise controller. So I kinda figure my lilo.conf file would look something like:
Kernel parameters look ok, if you have followed the "formula" for working out the numbers.
# if booting from the promise controller
# assuming linux / is on partition 4 of the raid array
# assuming winxp is on partition 1 of the raid array
Basically, you need to reference the array as /dev/ataraid/dXpY, where X is the array number and Y is the partition number. Don't use the hde references, as that will write to ONE drive only - the other disk will be /dev/hdg. The Linux ataraid doesn't do any consistency checking AFAIK, so that will result in an array that wants to be rebuilt, but doesn't say so! (md raid is much better in this respect) Only use the /dev/ataraid/d0 reference, and if that's not working then your append line is broken (or not needed around 2.4.20).
I'm not sure if there's anything in particular about WinXP you need to worry about. You have to fool around copying boot-sectors with WinNT, but I've not tried dual-booting with windows for a while...