[SWLUG] (Fwd) Re: Grub won't boot from second hard disc

Edward Evans eje at edevans.uklinux.net
Tue May 8 09:51:19 UTC 2007


On Sun, 06 May 2007 00:11:13 +0100
"Tony Pursell" <ajp at princeswalk.fsnet.co.uk> wrote:


> From:           	Tony Pursell 
> <ajp at princeswalk.fsnet.co.uk>
> To:             	"Dick Bain" <dick.bain at gmail.com>
> Subject:        	Re: [SWLUG] Grub won't boot from 
> second hard disc
> Send reply to:  	ajp at princeswalk.fsnet.co.uk
> Date sent:      	Sat, 05 May 2007 23:22:27 +0100
> 
> On 5 May 2007 at 21:14, Dick Bain wrote:
> 
> > On 05/05/07, Edward Evans <eje at edevans.uklinux.net> wrote:
> > > Can a Grub expert (or anyone else) help me with this?
> > 
> > not a grub expert but which distro are you using? and can you post us
> > the contents of /boot/grub/menu.lst
> > 
> 
> Have a look at the GRUB manual:
> 
> http://www.gnu.org/software/grub/manual/grub.html
> 
> There are issues with booting off a second disk.  See the 'map' 
> command (section 13.2.23)

Too right about issues!  But I think I have got it now - thanks.  In
my innocence I assumed that if the BIOS said it would boot from the 2nd
disc, that is what it would do.  As I understand it now, it actually
swaps the drive numbers so 2 becomes 1, and then boots as usual from
what it is now calling 1.  So the BIOS finds grub in the MBR because it
(the BIOS) knows which drive it is using, grub finds the menu
in /boot/grub because that was hard coded into the MBR when you set it
up, but than you have to put the WRONG drive number on the
kernel line in the grub menu so grub finds the kernel in what the
BIOS is calling 1st drive but is actually the second.  Are you still
following?!  Because now the 'root=' parameter in the list of kernel
options must point the the real drive because the linux kernel accesses
the drives directly, not through the BIOS.

Grub also finds the Windows partition OK if you give it the "wrong"
drive number, but Windows won't boot, presumably because it has been
told it is on drive 2, even though it is really on drive 1, and
apparently Windows will only run from the first drive. I couldn't make
"map" work with Windows or Linux, and reading the manual carefully, I
thinks its purpose is to make Windows think it's on the first drive
when it's really on another.  My problem is that it is on the first
drive but it's being told that it's on the second!

All this is my explanation of what happens, so it may be wrong, but at
least it's a warning to anyone else who is seduced by a BIOS option to
boot from a different hard disc that things may not be quite what they
seem!

Thanks for your help.

Edward



More information about the Swlug mailing list