Ooooh yeah, Linux once more! :P

For system help, all hardware / software topics NOTE: use Coders Corner for all coders topics.

Moderators: Krom, Grendel

Post Reply
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Ooooh yeah, Linux once more! :P

Post by Diedel »

Like it had been recommended to me, I have now bought an extra HD (USB connected), installed Linux (OpenSUSE 10.1 x86-64) on it. Now when I reboot and tell the boot loader I want to run windows, it calls some chaining program ... and that's it.

Fortunately I can simply unplug the USB drive and then normally boot from my internal HD, but that's not quite what I wanted.

As I am on it, aclocal cannot be found either in my Linux installation when I am trying to make d2x-xl.

Clues anybody? :)
User avatar
Krom
DBB Database Master
DBB Database Master
Posts: 16138
Joined: Sun Nov 29, 1998 3:01 am
Location: Camping the energy center. BTW, did you know you can have up to 100 characters in this location box?
Contact:

Post by Krom »

I believe I heard someone mention that the boot loader has to be installed on the same drive as the windows boot or it wouldn't function properly.
User avatar
Xamindar
DBB Admiral
DBB Admiral
Posts: 1498
Joined: Sun Jun 06, 2004 2:44 am
Location: California
Contact:

Post by Xamindar »

I assume you are using grub. It is probably pointing to the wrong windows partition in the grub.conf. The chainloader is trying to forward control onto the windows boot loader but is not finding it. Boot linux and check the grub config and make sure the drive and partition that has windows on it is correct. If windows is your first drive then it is probably (hd0,0). Also, if you are booting off the second drive then grub probably has the drive orders wrong. Best is to install grub on the windows drive's MBR if that's the case.

Good luck :)
Why doesn't it work?
User avatar
DCrazy
DBB Alumni
DBB Alumni
Posts: 8826
Joined: Wed Mar 15, 2000 3:01 am
Location: Seattle

Post by DCrazy »

In your grub.conf, make sure the \"rootnoverify\" line just before \"chainloader +1\" is pointing at the correct partition. If Linux can see your Windows drive, use that information to correct the rootnoverify line. /dev/hda0 would be (hd0,0). /dev/hdb0 would be (hd1,0), and so on.
User avatar
fliptw
DBB DemiGod
DBB DemiGod
Posts: 6459
Joined: Sat Oct 24, 1998 2:01 am
Location: Calgary Alberta Canada

Post by fliptw »

rebooting off the USB drive changes the order of how GRUB enumnerates drives - the USB drive becomes hd0(the booted drive always becomes hd0)

you need to do some drive remapping in order for that to work in grub.

basically, for you its

map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd0,0)
chainloader +1
boot

Are you using ubuntu? you might have to dl the autoconf tarball and compile it, cause I never could get ubuntu to properly install autoconf correctly.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Thanks for the advice. Where do I find grub.conf? I am a complete Linux noob.

Edit: aclocal problem solved.
User avatar
fliptw
DBB DemiGod
DBB DemiGod
Posts: 6459
Joined: Sat Oct 24, 1998 2:01 am
Location: Calgary Alberta Canada

Post by fliptw »

Diedel wrote:Thanks for the advice. Where do I find grub.conf? I am a complete Linux noob.

Edit: aclocal problem solved.
/boot/grub/grub.conf or menu.lst

make sure your boot partition is mounted, if you have one.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

I didn't find it in /boot/grub.
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

Ok, found it in menu.lst. Here the stuff from that file:

title Windows
chainloader (hd1,0)+1

Now this looks like it tries to boot Windows off hd1. Now is the problem that during rebooting hd1 becomes hd0, or what? I had found that Windows wouldn't boot when I had the USB HD connected when it still was a Windows HD. It looks like I cannot even select my internal HD as boot drive in the BIOS anymore with the USB HD connected. The internal HD is a SATA HD.

Now I am wondering what will happen if I change menu.lst as proposed: Can it happen that I cannot boot Linux any more after doing that? Is there anything else I have to edit, like e.g. this section:

title SUSE Linux 10.1
root (hd0,1)
kernel /boot/vmlinuz root=/dev/sdb2 vga=0x317 resume=/dev/sdb1 splash=silent showopts
initrd /boot/initrd

?
User avatar
fliptw
DBB DemiGod
DBB DemiGod
Posts: 6459
Joined: Sat Oct 24, 1998 2:01 am
Location: Calgary Alberta Canada

Post by fliptw »

whatever drive you boot off of, grub will peg that as hd0.

NTLDR will throw fits if its told its not on anywhere on HD0, so the map commands will tell grub to tell NTLDR what it wants to hear.

tho, try this first:

Code: Select all

Title Windows
rootnoverify (hd1,0)
chainloader +1
chainloader only accepts an argument of +1 as far as I know, and the (hd1,0)+1 stuff has me scratching my head.

the nice thing about grub is you can edit the entries from the grub menu directly. so you don't have to mess around with booting too much, and once your happy with it, add it to your menu.lst or grub.conf
User avatar
Diedel
D2X Master
D2X Master
Posts: 5278
Joined: Thu Nov 05, 1998 12:01 pm
Contact:

Post by Diedel »

That change did not help. It looks like the problem is how my system reacts to the presence of the USB HD (not seeing the SATA HD as booteable HD anmore in the BIOS). Weird. As I said, before I installed Linux, the USB drive had a FAT32 partition, and when I plugged it in, I couldn't boot Windows anymore (and the BIOS wouldn't offer the SATA drive as boot drive).
Post Reply