[vox-tech] grub not finding root partition

Jonathan Stickel jjstickel at sbcglobal.net
Fri May 20 08:46:37 PDT 2005


Peter Jay Salzman wrote:
> 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".
> 

Yes, I believe this is correct.


> 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.  :(
> 

Yes, also correct, and it causes unnecessary confusion, which is a shame.


> 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.
> 

Great!


More information about the vox-tech mailing list