Dual Booting WinXP / Linux from another drive using LILO

Dual Booting WinXP / Linux from another drive using LILO

Post by skubi » Mon, 20 Jan 2003 16:47:35



I've been looking around for a solution to my problem with little luck,
so I'm hoping that someone here might have some additional insight or
experience to help me out.

I just recently bought a second hard drive, which is attached to a
Promise Ultra133 TX2 controller card. It is the only drive attached to
the card. I also have my older drive still attached to my on-board IDE
bus as the master boot drive. Currently I run Windows 2000 on this drive
and it works fine, and I can access the new drive attached to the
controller card without any problems.

What I want to do, however, is load Windows XP and Linux (probably
Slackware... not that that'll make a difference) onto the NEW drive
attached to the controller card. As a result, I want to wipe my old
drive clean and use it for storage, but also as a boot drive.

Essentially, I want to create a small boot partition (/boot) at the
beginning of the old drive and configure LILO on it. So, LILO would be
setup to boot Linux but also add support for the Promise controller
card, hence, allowing access to the new drive.

So far, I have been able to successfully load Linux from CD, and add
support for the controller by passing something like:

ide2=0xb800,0xb402 ide3=0xb007,0xa805

This is fine. The problem I have is with Windows XP. Since it is
entirely on the other drive, how can I configure LILO to see the WinXP
partition on the new drive? I figure that since I have to pass
additional information to Linux, this must mean I have to pass it for
Windows too, correct?

Any ideas on what I can do, or whether this can even be done at all?

Thanx,

- skubik.

 
 
 

Dual Booting WinXP / Linux from another drive using LILO

Post by Markus Kossman » Tue, 21 Jan 2003 02:19:07



> I've been looking around for a solution to my problem with little luck,
> so I'm hoping that someone here might have some additional insight or
> experience to help me out.

> I just recently bought a second hard drive, which is attached to a
> Promise Ultra133 TX2 controller card. It is the only drive attached to
> the card. I also have my older drive still attached to my on-board IDE
> bus as the master boot drive. Currently I run Windows 2000 on this drive
> and it works fine, and I can access the new drive attached to the
> controller card without any problems.

> What I want to do, however, is load Windows XP and Linux (probably
> Slackware... not that that'll make a difference) onto the NEW drive
> attached to the controller card. As a result, I want to wipe my old
> drive clean and use it for storage, but also as a boot drive.

Well, the NT/W2K/XP bootloader/bootmanager expects to be installed in a
primary partition on the boot drive. As long as it sees a primary
DOS/Windows partition on the boot drive it will install itself on that
partition .

So make sure, that XP doesn't see your old W2k installation during its
installation ( for example by changing the partition ID to an type unknown
by windows) and provide a small primary DOS partition ( 1 cylinder = 8MB is
enough) on your boot drive, where XP can install its bootloader.

Then you can handle the XP boot-partition as described in the common
multiboot howtos (either add linux to the XP bootmanager or add the XP
boot-partition to lilo like a DOS partition)  

--


 
 
 

Dual Booting WinXP / Linux from another drive using LILO

Post by johninsd at san dot rr dot co » Tue, 21 Jan 2003 05:35:08



>I've been looking around for a solution to my problem with little luck,
>so I'm hoping that someone here might have some additional insight or
>experience to help me out.

>I just recently bought a second hard drive, which is attached to a
>Promise Ultra133 TX2 controller card. It is the only drive attached to
>the card. I also have my older drive still attached to my on-board IDE
>bus as the master boot drive. Currently I run Windows 2000 on this drive
>and it works fine, and I can access the new drive attached to the
>controller card without any problems.

>What I want to do, however, is load Windows XP and Linux (probably
>Slackware... not that that'll make a difference) onto the NEW drive
>attached to the controller card. As a result, I want to wipe my old
>drive clean and use it for storage, but also as a boot drive.

>Essentially, I want to create a small boot partition (/boot) at the
>beginning of the old drive and configure LILO on it. So, LILO would be
>setup to boot Linux but also add support for the Promise controller
>card, hence, allowing access to the new drive.

>So far, I have been able to successfully load Linux from CD, and add
>support for the controller by passing something like:

>ide2=0xb800,0xb402 ide3=0xb007,0xa805

>This is fine. The problem I have is with Windows XP. Since it is
>entirely on the other drive, how can I configure LILO to see the WinXP
>partition on the new drive? I figure that since I have to pass
>additional information to Linux, this must mean I have to pass it for
>Windows too, correct?

Windows (all versions) will only boot from the C: drive.

Two possible solutions:

1.  Create a small partition on the IDE drive for the Windows boot codes.  But
install the bulk (mucho) of Windows to the Promise drive.  This will work for
some versions of Windows.  I think I configured Win 95 to run from D:\windows
this way, but it put boot stuff in my DOS partition on C:.

2.  Disable the IDE drive in the BIOS.  Install windows to the Promise drive
as if it were the C: drive.  It will be BIOS 0x80 under these circumstances.  
Re-enable the IDE drive; boot Linux.  Make the following entry in
/etc/lilo.conf:

other=/dev/hdb1
   label=Windoze
   map-drive=0x81 to=0x80
   map-drive=0x80 to=0x81

Re-run /sbin/lilo to install this boot option.  By swapping the BIOS device
codes in the LILO chain loader, Windows now thinks it is booting from 0x80,
which is the C: drive.

I have Linux on /dev/hdc, Win2k on /dev/hda1, and Win98 on /dev/hdb1, booting
the last using this approach.  LILO is used as the boot manager, installed:
"boot = /dev/hda" in lilo.conf.

--John

 
 
 

Dual Booting WinXP / Linux from another drive using LILO

Post by skubi » Tue, 21 Jan 2003 09:59:56




>>I've been looking around for a solution to my problem with little luck,
>>so I'm hoping that someone here might have some additional insight or
>>experience to help me out.

>>I just recently bought a second hard drive, which is attached to a
>>Promise Ultra133 TX2 controller card. It is the only drive attached to
>>the card. I also have my older drive still attached to my on-board IDE
>>bus as the master boot drive. Currently I run Windows 2000 on this drive
>>and it works fine, and I can access the new drive attached to the
>>controller card without any problems.

>>What I want to do, however, is load Windows XP and Linux (probably
>>Slackware... not that that'll make a difference) onto the NEW drive
>>attached to the controller card. As a result, I want to wipe my old
>>drive clean and use it for storage, but also as a boot drive.

>>Essentially, I want to create a small boot partition (/boot) at the
>>beginning of the old drive and configure LILO on it. So, LILO would be
>>setup to boot Linux but also add support for the Promise controller
>>card, hence, allowing access to the new drive.

>>So far, I have been able to successfully load Linux from CD, and add
>>support for the controller by passing something like:

>>ide2=0xb800,0xb402 ide3=0xb007,0xa805

>>This is fine. The problem I have is with Windows XP. Since it is
>>entirely on the other drive, how can I configure LILO to see the WinXP
>>partition on the new drive? I figure that since I have to pass
>>additional information to Linux, this must mean I have to pass it for
>>Windows too, correct?

> Windows (all versions) will only boot from the C: drive.

> Two possible solutions:

> 1.  Create a small partition on the IDE drive for the Windows boot codes.  But
> install the bulk (mucho) of Windows to the Promise drive.  This will work for
> some versions of Windows.  I think I configured Win 95 to run from D:\windows
> this way, but it put boot stuff in my DOS partition on C:.

> 2.  Disable the IDE drive in the BIOS.  Install windows to the Promise drive
> as if it were the C: drive.  It will be BIOS 0x80 under these circumstances.  
> Re-enable the IDE drive; boot Linux.  Make the following entry in
> /etc/lilo.conf:

> other=/dev/hdb1
>    label=Windoze
>    map-drive=0x81 to=0x80
>    map-drive=0x80 to=0x81

> Re-run /sbin/lilo to install this boot option.  By swapping the BIOS device
> codes in the LILO chain loader, Windows now thinks it is booting from 0x80,
> which is the C: drive.

> I have Linux on /dev/hdc, Win2k on /dev/hda1, and Win98 on /dev/hdb1, booting
> the last using this approach.  LILO is used as the boot manager, installed:
> "boot = /dev/hda" in lilo.conf.

> --John

I think my biggest concern is whether LILO (or GRUB) will even see the
drive on the Promise controller. Under Linux, I can access the drive as
/dev/hde, and as I mentioned in my original post, I have to explicitly
tell the kernel where the extra two IDEs from the Promise controller
are. Now, again, I'm using a generic kernel to boot off of the Slackware
Installation CD, for now, until I figure all this other stuff out and
I'm ready to begin installing. But my biggest concern is with LILO and
GRUB themselves and whether it will even SEE /dev/hde on the Promise
controller.

- skubik.

 
 
 

Dual Booting WinXP / Linux from another drive using LILO

Post by johninsd at san dot rr dot co » Wed, 22 Jan 2003 07:56:00



>I think my biggest concern is whether LILO (or GRUB) will even see the
>drive on the Promise controller. Under Linux, I can access the drive as
>/dev/hde, and as I mentioned in my original post, I have to explicitly
>tell the kernel where the extra two IDEs from the Promise controller
>are. Now, again, I'm using a generic kernel to boot off of the Slackware
>Installation CD, for now, until I figure all this other stuff out and
>I'm ready to begin installing. But my biggest concern is with LILO and
>GRUB themselves and whether it will even SEE /dev/hde on the Promise
>controller.

If the kernel has /dev/hde support, the LILO boot-installer can "see" it.  It
uses the kernel for all I/O.

The LILO boot loader is another story.  It knows nothing about /dev/hde, or
hda, hdb, hdc, ... etc.  It uses the BIOS for I/O, so it is only concerned
with BIOS device codes.  If the BIOS assigns a device code to the drive, then
LILO can "see" it.  Does your Promise controller give you any indication that
it installs BIOS support for attached drives.  Mine does.

The LILO boot diagnostic (floppy1) may be used to see what BIOS drives are
attached to your computer.  It is part of the LILO source distribution,
generated as part of "make floppy".

--John

 
 
 

Dual Booting WinXP / Linux from another drive using LILO

Post by skubi » Wed, 22 Jan 2003 10:27:40


<snip>

Quote:> The LILO boot loader is another story.  It knows nothing about /dev/hde, or
> hda, hdb, hdc, ... etc.  It uses the BIOS for I/O, so it is only concerned
> with BIOS device codes.  If the BIOS assigns a device code to the drive, then
> LILO can "see" it.  Does your Promise controller give you any indication that
> it installs BIOS support for attached drives.  Mine does.

Not quite sure on that. My Promise controller IS initialized immediately
after the system BIOS goes through the memory test, before Windows begin
booting on my current boot drive (/dev/hda). It comes up with a screen
that detects the drives attached to the controller, but doesn't really
say anything about installing BIOS support. Is this what this is then?

- skubik

 
 
 

Dual Booting WinXP / Linux from another drive using LILO

Post by johninsd at san dot rr dot co » Thu, 23 Jan 2003 12:31:40



><snip>

>> The LILO boot loader is another story.  It knows nothing about /dev/hde, or
>> hda, hdb, hdc, ... etc.  It uses the BIOS for I/O, so it is only concerned
>> with BIOS device codes.  If the BIOS assigns a device code to the drive, then
>> LILO can "see" it.  Does your Promise controller give you any indication that
>> it installs BIOS support for attached drives.  Mine does.

>Not quite sure on that. My Promise controller IS initialized immediately
>after the system BIOS goes through the memory test, before Windows begin
>booting on my current boot drive (/dev/hda). It comes up with a screen
>that detects the drives attached to the controller, but doesn't really
>say anything about installing BIOS support. Is this what this is then?

My guess would be that BIOS device codes are assigned in the order drives are
recognized.

--John

 
 
 

1. Security risk on dual boot WinXP/Linux systems using Partition Magic 8.0?

Hi all,

Up front, I will state that I am a new Linux user, having made the plunge
into Linux via the recent RH 8.0 beta program.  I have been impressed by
what I have seen and will be installing the full release version this week
and slowly making the transition with most of my work to the Linux
environment.  There are still some things that I will need for business on
the WinXP side, hence the dual-boot system using GRUB.

I am not new to computers however, having been in related fields for >20
years.

I had been using Partition Magic 7.0 to adjust the disk allocation on my
system for dual-booting and just upgraded this past week to the new 8.0
version, which has some new features.

One of the new features in this version is a partition browser, within which
one can actually browse files and directories as well as create, copy and
delete files and directories.  These actions must take place within the PM
browser and cannot occur between the PM browser and Windows File
Manager/Explorer. These actions can be ON OR BETWEEN any of the supported
file system types under PM 8.0, which includes FAT(32), NTFS and Ext2/3 and
Swap.

When engaging in this activity on the Linux Ext3 based partitions, I could
in fact browse the entire system including root areas, without restriction,
seemingly bypassing any Linux "front-end" security.  I could copy files
between the Windows partitions and the Linux partitions (nice feature to
save time from having to have/mount an intermediate FAT partition or CD
burning).

I raise this issue, to some extent in surprise, not yet being fully
cognizant of the file system security under the Ext3 specs.  I did some
checking last night on varous Linux security sites and have read some FAQ's
but will concede that I am likely to be missing an intuitive understanding
of the security features of the file system presently.

I bring this to the group's attention and seek comment.  I recognize that
this scenario is (at least potentially) limited to dual-boot environments
such as I describe, where the majority are platforms under the use/control
of a single individual.  However, it comes to mind that there may very well
be such "shared" systems and that in that situation, a WinXP user given
access privileges to use PM 8.0, can then freely browse the Linux
partition(s) with impunity, presumably bypassing any Linux I&A or audit
mechanisms in place.

TIA for any comments.

Marc

2. X2 - A layman's review

3. LILO: Dual boot Linux drive+Win95 drive problem

4. DOS floppys

5. where should I install GRUB/LILO to dual boot winxp and RH9?

6. How to transfer a NIS+ server role to another machine?

7. Dual-drive dual-boot RH Linux 5.1 & Win95: recommended boot manager?

8. ISO files, burning in linux.

9. winxp + fc2 dual-boot - IDE-0 boot record not found

10. Using LILO to dual-boot Win ME and Win 3.1, NO Linux installed?

11. Warning: Dual Booting Linux and NT Using Lilo

12. dual boot Linux / Win2k using Lilo