[vox-tech] grub not finding root partition

Peter Jay Salzman p at dirac.org
Fri May 20 08:38:35 PDT 2005


On Fri 20 May 05, 11:27 AM, David Hummel <@comcast.net> said:
> On Fri, May 20, 2005 at 11:08:19AM -0400, Peter Jay Salzman wrote:
> > 
> > On Fri 20 May 05, 11:03 AM, David Hummel <@comcast.net> said:
> > > On Fri, May 20, 2005 at 10:45:32AM -0400, Peter Jay Salzman wrote:
> > > > 
> > > > Grub seems to work for my Debian kernels:
> > > > 
> > > >    title		Debian GNU/Linux, kernel 2.6.8-2-686 
> > > >    root		(hd1,0)
> > > >    kernel		/vmlinuz-2.6.8-2-686 root=/dev/hda6 ro 
> > > >    initrd		/initrd.img-2.6.8-2-686
> > > >    savedefault
> > > >    boot
> > > > 
> > > > But not for a home compiled kernel:
> > > > 
> > > >    title		Debian GNU/Linux, kernel 2.6.11
> > > >    root		(hd1,0)
> > > >    kernel		/vmlinuz-2.6.11 root=/dev/hda6 ro 
> > > >    savedefault
> > > >    boot
> > > > 
> > > > When I try to boot 2.6.11, the kernel can't find the root filesystem and
> > > > panics.
> > > 
> > > If the root filesystem is on /dev/hda, then the drive should be hd(0,0).
>                                                                     ^^^^^^^
>                                                          should be: (hd0,0)
> >  
> > But then how is the Debian stock kernel finding the root filesystem?  That
> > entry was installed by Debian.  How is it working if it points to (hd1,0)?
> 
> Good question.  Do you have a separate /boot partition?  Where is it?
> This configuration indicates that its the first partition on /dev/hdb,
> which seems odd, since your / is on /dev/hda6.  For instance, if your
> /boot is on /dev/hda5, the root line should be (hd0,4).
> 
> -David

I really wish grub used standard device names.  :(

root filesystem is on /dev/hda6
boot partition is on /dev/hdb1

   title		Debian GNU/Linux, kernel 2.6.11
   root		(hd1,0)
   kernel		/vmlinuz-2.6.11 root=/dev/hda6 ro 
   savedefault
   boot

So I take it that "root (hd1,0)" doesn't mean "where to find root filesysetm",
but rather, "where to find the kernel".

And I'm guessing that "root=/dev/hda6 ro" must be kernel arguments, which
would mean "root=/dev/hda6" gives the location of the root filesystem.

If this is the case, then the word "root" has two meanings in the grub
config file, which is really awful.  :(

Pete

ps- I was able to boot with 2.6.11.  The problem was that I used a Debian
kernel to form the base for a "make oldconfig".  Debian ships with ext3 as a
module since it uses initrd.  I rebuilt the kernel with ext3 bolted in, and
it boots.

-- 
Every theory is killed sooner or later, but if the theory has good in it,
that good is embodied and continued in the next theory. -- Albert Einstein

GPG Fingerprint: B9F1 6CF3 47C4 7CD8 D33E  70A9 A3B9 1945 67EA 951D


More information about the vox-tech mailing list