Date: Tue, 28 Dec 2004 16:05:23 -0800 (PST) From: Luke <luked@pobox.com> To: Tom Connolly <tomc@cqg.com> Cc: FreeBSD_Questions <freebsd-questions@freebsd.org> Subject: Re: Dual boot WinXP and FreeBSD 5.3 Message-ID: <Pine.NEB.4.61.0412281539190.29296@xm.freeshell.org> In-Reply-To: <033f01c4ec6e$014ba970$9a11a8c0@d3stomc> References: <033f01c4ec6e$014ba970$9a11a8c0@d3stomc>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 27 Dec 2004, Tom Connolly wrote: > Hello list. I wish to put FreeBSD 5.3 on a new hard drive and have it > dual boot with the existing Windows XP system (separate HD). Can I just > simply go through the FreeBSD install and have it install the FreeBSD > boot manager/loader on the XP drive? I can't risk doing any damage to > the XP system as it has a thermal analyzer program on it that won't run > on FreeBSD (otherwise I would have no use for XP at all). I would like > to know if there are any "gotchas" or anything that could be a problem. > I would really like to hear comments from anyone who has set up such a > system. I tried this a few months ago using only the FreeBSD boot manager, and couldn't get anywhere with it. The solution I ultimately ended up using was GRUB. /usr/ports/sysutils/grub It's very complicated, or at least I thought so, but it's very flexible too. On my system, I've got: Primary Master IDE = Windows XP drive Primary Slave IDE = none Secondary Master IDE = CD drive Secondary Slave IDE = FreeBSD And some raid drives that don't really enter into this... WinXP is on the primary master drive because WinXP just isn't happy being mounted anywhere else... You come up with drives like E instead of C and all kinds of other nonstandard stuff, so it's simpler just to play along with Microsoft and make it your primary master drive. The arrangement of the other drives just happened to be what was most convenient for the cabling. This is the configuration file I created to get this to work with GRUB ----- default 0 timeout 6 title FreeBSD color red/black light-red/black root (hd0,0,a) kernel /boot/loader title WinXP color blue/black light-blue/black map (hd0) (hd2) map (hd2) (hd0) root (hd2,0) makeactive chainloader +1 ------ The "default 0" and "timeout 6" means it boots FreeBSD by default after 6 seconds. The next two blocks describe the two menu choices I get. The menu "color" settings, as it turns out, don't work. I'm not sure why. I haven't cared enough to investigate further. The "root" and "map" directives tell GRUB where to find the partition I want to boot. GRUB has its own mysterious way of counting the drives. It counts my drives backwards from what I think it should, so that's why I have to do all the mapping and why FreeBSD boots off hd0 instead of hd2 or hd3. The "kernel" directive in the FreeBSD section and the "makeactive","chainloader +1" directives in the WinXP section tell the machine where to continue the booting process. All of this is described in the documentation. Since the machine boots from the WinXP disk by default since it's the primary master and has a bootable partition on it, I had to install GRUB onto that disk. GRUB made a bootable floppy that took care of that for me. I still keep that floppy around just in case I ever need to reinstall Windows. Hopefully you'll find a much simpler solution than I did. I just wanted to say that I'm really impressed with GRUB, and that with enough persistence and study, I think it could make just about any dual-boot configuration work.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.4.61.0412281539190.29296>