XP pro & Suse dual boot problems

Alowishus

Member
Sep 14, 2005
113
0
0
I recently became interested in getting more into linux so I decided to give suse a try. Everything works fine except I cannot dual boot windows and suse. Whenever I choose Windows from the grub menu I get a black screen that just says "Chainloader (hd1,0)+1" with a "_" just underneath it and it just hangs there. Suse finds and mounts my windows HD perfectly so I know nothing is wrong with my HD. The setup I have is the following:

Primary HD: SATA 80 gig - This is where I installed suse and where the bootloader is.
Secondary HD: SATA 300 gig - My windows drive, the one that s giving me trouble.

Does anyone have any ideas what the trouble could be? Any help would be greatly appreciated.
 

SleepWalkerX

Platinum Member
Jun 29, 2004
2,649
0
0
Go to your BIOS and set your hard drive access mode from where windows is installed to LBA.
 

drag

Elite Member
Jul 4, 2002
8,708
0
0
Sounds like the configuration of your boot loader is a bit messed up. Maybe Suse's installer didn't get it quite right.

It's fairly easy to fix.

There are 2 boot loaders commonly used on PC linux machines... One is 'lilo' and the other is 'grub'. I beleive your using grub.

A boot loader works like this:
your system boots up, posts, and the bios selects the boot device. (harddrive, floppy, cdrom, network, etc)
In this case it's the harddrive. It reads the first 512kB of your harddrive and loads it into system memory. This part of the harddrive is what is known as the 'master boot record' or 'mbr' for short.
This mbr contains the first first stage of the bootloader, in this case 'grub'. (If it was windows it would be called 'ntldr'.)
grub gets executed then loads the second half of itself and then reads the configuration file that has the various menu entries and whatnot for your computer.


This is configuration is a plain text file and is what grub uses to know what different boot options you want and what to call them in the boot menu and such.


the file should be located in /boot/grub directory and is called menu.lst or grub.conf (if you have both they should be the same file, just with 2 different names)


post that if the LBA thing didn't work.
 

Alowishus

Member
Sep 14, 2005
113
0
0
My drives are SATA, I cannot set them to anything but "auto" or "Large".

Here is what is inside of my menu.lst file:

# Modified by YaST2. Last modification on Tue Jan 10 01:45:39 UTC 2006

color white/blue black/light-gray
default 1
timeout 8
gfxmenu (hd0,1)/boot/message

###Don't change this comment - YaST2 identifier: Original name: linux###
title SUSE LINUX 10.0
root (hd0,1)
kernel /boot/vmlinuz root=/dev/sda2 vga=0x317 selinux=0 resume=/dev/sda1 splash=silent showopts
initrd /boot/initrd

###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
chainloader (hd1,0)+1

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- SUSE LINUX 10.0
root (hd0,1)
kernel /boot/vmlinuz root=/dev/sda2 vga=normal showopts ide=nodma apm=off acpi=off noresume selinux=0 nosmp noapic maxcpus=0 edd=off 3
initrd /boot/initrd

###Don't change this comment - YaST2 identifier: Original name: memtest86###
title Memory Test
kernel (hd0,1)/boot/memtest.bin

My Setup is as follows:

My primary hard drive is an 80 gig SATA with the swap/root partitions on it. This is also where the mbr resides. My secondary hard drive is a 300 gig with only one partition which is where windows xp is installed.
 

drag

Elite Member
Jul 4, 2002
8,708
0
0
try changing your windows entry to:
title windows
root (hd1,0)
makeactive
chainloader +1

and see if that makes a difference.

The configuration is read each time you boot up so all you have to do is edit it and reboot. Be sure to make a copy of the file before you edit it first!! This makes it so that if you goof and forget how the file was originally built then you can copy back the old file and have it like nothing else happenned.
 

Alowishus

Member
Sep 14, 2005
113
0
0
Still no luck. I get the following message:

Root (hd1,0)
Filesystem type unknown partition type 0x7
Chainloader 1
 

Alowishus

Member
Sep 14, 2005
113
0
0
Im using the latest downloadable version of suse (version 10). Thanks for the article, but a couple of things are troubling me. For one thing, this fix is made for suse 9.1, I dont know how well it would work on the latest version of suse. Also I really dont want to futz with my windows drive at all if there is a risk of rendering my windows partition unbootable (which has happened many times to me when I first experimented with linux on my first computer). Is there anything else I can try before I mess with my windows HD?
 

drag

Elite Member
Jul 4, 2002
8,708
0
0
Did you install the harddrive to install Linux?

Windows is very fragile when it comes to changing drive orders around. There are ways to trick Windows using grub into thinking that it has a different harddrive configuration then it realy has.

If the Windows bootloader is installed on the second drive and was not overwritten by the Linux bootloader you may be able to select the boot device via the BIOS. (or like my bios were you can select the boot device by hitting F8 at the right time.) You can try that to access the ntldr directly instead of using the Linux harddrive.

According to your boot config you have:
The first harddrive has Suse installed on the second partition.
The second harddrive has Windows installed on the first partition.

Is this correct?
 

Alowishus

Member
Sep 14, 2005
113
0
0
yeah, thats true. I have been using my bios to switch between linux and windows drives. As effective as it is, its really annoying having to switch hard drives and reboot every time I want to play around with linux.
 

Alowishus

Member
Sep 14, 2005
113
0
0
Found the solution on linuxforums. Apparently Windows doesnt like to be anything but the first drive so I tricked it into thinking it was the primary drive using this entry in menu.lst:

Title Windows
map (hd0) (hd1) "set the linux hd to secondary
map (hd1) (hd0) "set the windows hd to primary
root (hd1, 0)
makeactive
chainloader +1

Thanks for your help everyone and I hope this can help any other stuck suse/windows users.