A problem of mine; might be specific.

#1
Ok, champs; here's how it goes.

1. I installed Debian linux on my master HDD weeks ago. Now, I've attempted to run wine to get windows programs to work but to no avail. I'm an ATI user with Debian Lenny; I can't run wine! lol!

2. Well, I dusted off my trusty Vista Ultimate disk and shoved it in; installing it on my third HDD which is a small 80gb hard drive intended for program and game usage I can't get through linux.

3. What happened? Well I'll tell you.

Standard old grub can't boot the ntfs drive, says it's unmountable and gives me an error. I know it's the right partition; (hd2,0). Then tells me the Boot-manager is missing.

Well that's just dandy except I'm starting to believe that the standard grub bootloader that came with Debian can't boot windows because EasyBCD is installed.

or rather::

Debian's grub can't boot EasyBCD, but can boot the original Bootmgr.
Which isn't there, and if I installed it; I'd roll over grub.

Here's my HDD map(I'm typing this all from memory, so I might be a little wrong because I'm in Vista at the moment. I can't exactly fdisk all of this)::

- (hd0,1) - Debian 5 Lenny
-(hd1,0) - Windows Backup HDD; unimportant really.
-(hd2,0) - Windows Vista

Now I've used supergrub to get back and forth from linux to Vista but it's really annoying. I'm also not too sure which drive supergrub is rewriting boot-records to. Because when one "supposedly" is fixed; it still exists.

i.e. Grub tries to boot Windows/ fails then EasyBCD loads for no reason whatsoever.

:confused:

Addendum:

WOO! I fixed it.

Neogrub, for whatever reason decided that my Debian partition was (hd2,0)...

and it's my first HDD >.>

I don't know either; but I do know it works. I'm posting from Debian right now with no supergrub disk.

What I'm thinking is that for whatever reason, neogrub identifies hard disks differently than normal grub does. So just copying and pasting my grub configuration from Debian didn't work. Randomly typing.

root (hdx,y)
root (hdx,y)
root (hdx,y)

until it came back with
FOUND - ext3

then booting from the resulting configuration. :tongueout:
 
Last edited:
#2
3. What happened? Well I'll tell you.

Standard old grub can't boot the ntfs drive, says it's unmountable and gives me an error. I know it's the right partition; (hd2,0). Then tells me the Boot-manager is missing.
Hello Gossamer, welcome to NST.
Ok, you first need to verify that your Grub (not NeoGrub) menu.lst's Vista entry has "map" lines in it, which is the only way to boot Windows off of another hard drive with Grub:
Code:
map (hd0) (hd2)
map (hd2) (hd0)
That should swap your drives, and make your Vista drive the boot drive (i.e. drive 0 in the BIOS's mind).
Well that's just dandy except I'm starting to believe that the standard grub bootloader that came with Debian can't boot windows because EasyBCD is installed.
EasyBCD has nothing to do with whether or not Grub can chainload the Windows bootloader or not. It is just an app to edit the Vista BCD, with several more features added recently to do other things. But it is still mainly for editing the Vista BCD, which would normally require having to enter several commands in the Command Prompt to get it done. Basically, it is the GUI equivalent of the "bcdedit.exe" command-line tool.
or rather::

Debian's grub can't boot EasyBCD, but can boot the original Bootmgr.
Which isn't there, and if I installed it; I'd roll over grub.
Again, EasyBCD is just a tool for editing the Windows bootloader. It is not a bootloader in itself.
Here's my HDD map(I'm typing this all from memory, so I might be a little wrong because I'm in Vista at the moment. I can't exactly fdisk all of this)::

- (hd0,1) - Debian 5 Lenny
-(hd1,0) - Windows Backup HDD; unimportant really.
-(hd2,0) - Windows Vista

Now I've used supergrub to get back and forth from linux to Vista but it's really annoying. I'm also not too sure which drive supergrub is rewriting boot-records to. Because when one "supposedly" is fixed; it still exists.

i.e. Grub tries to boot Windows/ fails then EasyBCD loads for no reason whatsoever.
Hold on...which bootloader is controlling the boot? Grub or the Vista bootloader? You can tell by whether or not you see the Grub menu when first starting up, or if its not visible, by hitting Esc to get to the menu.
Addendum:

WOO! I fixed it.

Neogrub, for whatever reason decided that my Debian partition was (hd2,0)...

and it's my first HDD >.>
Sounds like you're confused about which hard drive is actually first...
Keep in mind that the drive value (whether the standard Grub or NeoGrub) is determined by which drive is first (i.e. drive 0) in the boot sequence, and the order of the drives following it. If your Debian drive is seen as the third drive (the count begins at 0), then your Vista drive is probably first in the boot sequence, which I guess answers my question about which bootloader was controlling the boot, Vista's or Grub. Vista must be controlling it.
Anyhow, I'm glad you got it booting without our help. Using NeoGrub from the Vista boot menu to boot Linux is fine, and may be simpler to achieve than using the standard Grub if you're not very familiar with Grub syntax.
 
Last edited:
#3
Hello Gossamer, welcome to NST.
Ok, you first need to verify that your Grub (not NeoGrub) menu.lst's Vista entry has "map" lines in it, which is the only way to boot Windows off of another hard drive with Grub:
Code:
map (hd0) (hd2)
map (hd2) (hd0)
That should swap your drives, and make your Vista drive the boot drive (i.e. drive 0 in the BIOS's mind).
EasyBCD has nothing to do with whether or not Grub can chainload the Windows bootloader or not. It is just an app to edit the Vista BCD, with several more features added recently to do other things. But it is still mainly for editing the Vista BCD, which would normally require having to enter several commands in the Command Prompt to get it done. Basically, it is the GUI equivalent of the "bcdedit.exe" command-line tool.
Again, EasyBCD is just a tool for editing the Windows bootloader. It is not a bootloader in itself.
Hold on...which bootloader is controlling the boot? Grub or the Vista bootloader? You can tell by whether or not you see the Grub menu when first starting up, or if its not visible, by hitting Esc to get to the menu.
Sounds like you're confused about which hard drive is actually first...
Keep in mind that the drive value (whether the standard Grub or NeoGrub) is determined by which drive is first (i.e. drive 0) in the boot sequence, and the order of the drives following it. If your Debian drive is seen as the third drive (the count begins at 0), then your Vista drive is probably first in the boot sequence, which I guess answers my question about which bootloader was controlling the boot, Vista's or Grub. Vista must be controlling it.
Anyhow, I'm glad you got it booting without our help. Using NeoGrub from the Vista boot menu to boot Linux is fine, and may be simpler to achieve than using the standard Grub if you're not very familiar with Grub syntax.
I'm not too familiar with grub because I've never had to configure it. It's always just kind of... worked. This is my first time dual-booting a Linux/Windows system.

I still don't understand why making my Debian boot (hd2,0) in EasyBCD made it boot. It's set as the master drive... it's in sata 0. I put it there! :grinning:

Well it works, and that's all I care about.
 

JustinW

Super Moderator
Staff member
#4
If your linux installs on a second drive than Windows and you boot from Windows drive, bootmgr considers the Windows hd hd0 the other drives get bumped up, and the order gets inheritied by the bootloader your chainloading (in this case grub). If you boot from the linux drive directly, it would be hd0.
 
#5
Whatever drive you're booting from is drive 0 (i.e. the first drive as detected by the BIOS normally), whether the Windows drive or the Linux drive. So most likely if your Vista bootmanager is *controlling the boot* (as in when you get the Vista menu first), your Windows drive is drive 0. So naturally, that makes your Linux drive value be a value higher, as in (hd2,0), which you said is what the drive is being seen as by NeoGrub...:wink:
NeoGrub sees the drives the same way the standard Grub sees them. So if it sees your Linux drive as being the third drive, then you better believe it is the third drive.
 
Last edited:

Terry60

Knows where his towel is.
Staff member
#6
The SATA channels on your mobo bear only a coincidental relationship with the drive numbers you see in Disk Management, Grub, etc.
As the 2 Js have said, the drive you're booting from (1st in the BIOS boot sequence) is seen by bootloaders as disk 0.
Once an OS is loaded, it might see things differently, Vista being a prime example of almost random assignment. (I'm sure there's some system in there, but it's hard to discern)