[TriLUG] Dual booting Windows XP and FC4

Aaron S. Joyner aaron at joyner.ws
Wed Jan 25 01:48:28 EST 2006


Neil L. Little wrote:

> Ok, noob time again...
>
> I have installed FC4 on a system that is primarily a Windows XP
> machine (for now).
>
> WinXP (NTFS file system) is on the Master drive (hda).
> FC4 is on the Slave drive (hdb).
>
> Having installed FC4 on the slave drive So I finish the load and
> reboot expecting to have grub load, direct it to the FC4 drive and go
> through my first boot.
>
> Well, it never happeded. WinXP boots and continues on like nothing has
> ever changed.
>
> I  have discovered that grub never got installed on my Master drive. I
> attempted to manually install grub and recieved a message "file system
> unknown" as soon as I tried to set the root device to my windows
> partition.
>
> Doing some research I have discovered that there is a problem reading
> NTFS... or its a feature that is turned off in the kernal...  or I
> have to add support which means a kernal rebuild (gnashing teeth and
> pulled hair at this point). Maybe not even being able to write to NTFS
> at all (beating of the head on first available flat surface). Ok, its
> late at night and its time to drop back and regroup.
>
> So here are my questions at this point...
>
> 1. Can I get Linux to read/write to/from an NTFS drive. Meaning put
> grub on it.

This is a two part question, but with a little explanation that will
become clear.  First, it's possible though not reliable or recommended,
to write to an NTFS partition for Linux.  Thankfully, that does not
really concern the second part of your question, which is, can I put
GRUB on that first hard drive as the boot loader.

Every hard drive is laid out in such a fashion that the first 512 bytes
are reserved for the "Master Boot Record".  After that comes the
partition table (depending on your architecture), and that partition
table references 1 or more partitions, which may also contain their own
512 byte section for boot loaders associated with that partition.

If the bios attempts to boot to a device, it will blindly take the first
512 bytes, read them into memory, and attempt to execute them as machine
code.  If that fails, it will consider that device unbootable.  If that
machine code runs (which in your future happy case will be the GRUB
stage-1 boot loader), it can then look to other places on the disk for
more complete booting information, decide what the options are, present
a menu to the user, etc. - up to the limits of the software of the boot
loader (which these days is pretty high).

So the answer is, Yes, you can put GRUB on that first drive.  No, it
does not have to be able to understand NTFS, and your kernel need not
write to NTFS to do it.

> 2. Will I be able to avoid having to to fancy presti-digi-tations to
> get this Dual boot thing going like:
>                   a) changing boot sequence in BIOS

Possibly.

>                   b) adding a special FAT partition

Very unlikely.

>                   c) adding a switch to change master/slave jumpers.

Do you mean a relay or solid state switch to "physically" change the
jumpers, from software?  :)  That's a rather ingenious solution that I
surprisingly haven't heard before.  Fear not, if that's what you really
mean, it's way over kill, but points for ingenuity.  :)

> 3. Adding a boot loader that runs from the WinXP side.

Well this is actually possible, although unnecessary.  You can, with a
modicum of effort, teach the Windows XP boot loader to load up your GRUB
boot code.  (Yes, there is a Windows XP boot loader, although most
people don't run into it, you can use it for dual-booting Windows XP and
other Windows operating systems rather easily, such as Windows 98, NT4, etc)

> So. can anyone shed any light?

I would suggest that by hook or crook (or probably most reliably by
using a boot CD) you should get back into a working Linux system, with
GRUB at your disposal.  You should then see about running `grub-install
hd0`, which will, all things being in the right place, install GRUB on
the master boot record of your first hard drive.  Unfortunately, there
is a good deal of work to a) get access to the boot partition of the old
hard drive, b) running GRUB correctly (you may need the --config-file=
option), c) ensuring that the menu.lst used as the config file contains
the correct entries for root (probably root (hd1,0)?), then d) adding an
appropriate title section to GRUB for booting your Windows XP system.

Unfortunately, with out concrete details of exactly how your system is
laid out (which partition on the linux drive is the /boot partition (do
you even have a boot partition), what boot CD are you using (I'd
recommend a recent Knoppix), etc), I can't be of great assistance with
the stumbling blocks listed above.  There are a myriad resources on
Google (some of them confusing, some enlightening), but hopefully armed
with the understanding of boot sectors and partitions above, you'll have
more luck progressing forward.  And of course, if not, feel free to post
back more details and we'll see what else we can help out with.

> 73,

73!

> Neil Little, WA4AZL      JARS Forever! ...er, TRILUG too!


Aaron S. Joyner, KF4FUW
TriLUG Forever... or at least as much as I can from the other side of
this chunk of dirt.  :)




More information about the TriLUG mailing list