grub2: error: fiel not found

Ken Moffat zarniwhoop73 at googlemail.com
Thu Mar 25 13:01:19 PDT 2010


On 25 March 2010 19:34, Bruce Dubbs <bruce.dubbs at gmail.com> wrote:
> Ken Moffat wrote:
>
>> Took me a few minutes to realise what was the main error:
>> grub rescue> set
>> prefix=(hd0,15)/boot/grub
>> root=hd0,15
>>
>> After a few more failed attempts to insmod anything,
>> I realised that the added '/boot' was the problem.  Fixed
>> that with
>>
>> set prefix=(hd0,15)/grub
>> insmod normal
>> normal
>
> That isn't how it is supposed to work.  You should be using
>   set root=(hd0,15)
>
> The books says:  "The root setting is the default value if a 'set root'
> instruction is not found in grub.cfg. This is the partition that is
> searched for the kernel and other supporting files. It is different from
> the 'root=' parameter on the 'linux' line in the configuration line. The
> latter is the partition the kernel mounts as '/'. In the example
> grub.cfg above, both values point to /dev/sda2, but if there is a
> separate boot partition, they will be different."
>
> If /dev/sda15 is your /boot partition, it should then find the grub
> modules in grub/.
>
>
>   -- Bruce
 My reading was that it didn't.  If you look at my original post I had

|# sda7 LFS-6.6-rc2 pure64
|menuentry "LFS-6.6-rc2 pure64 2.6.33 (sda7)" {
|       insmod ext2
|       set root=(hd0,15)
|       search --no-floppy --fs-uuid --set 5a1327f4-48e3-4bce-afe3-67b388437720
|       linux   /vmlinuz-2.6.33-sda7 root=/dev/sda7
video=radeonfb:1024x768-16 at 70 ro
|}

 Is that *not* what the book suggests for root= in my case ?  In any
case, grub didn't get that far, it was in the rescue shell, not the regular
 grub shell.

 And it was the *prefix* hd(0,15)/boot/grub that was the problem - as
I said, I've still no idea where prefix is set.

 /me scratches his head a lot, and rereads section 8.4.  All I can see is
'default root setting - guessed' and the note beneath it, telling me the
default root will be used if a 'set root' instruction is not found in
grub.cfg.  I can't see any reference to *how* to alter the default root,
but since it showed up as root=hd(0,15) when I ran 'set' in the rescue
shell, I believe it was already correct.

 Also, isn't 'insmod ext2' going to be redundant in grub.cfg on an ext2+
filesystem ?  If grub can't read an ext2fs, it won't be able to read
grub.cfg.

ĸen
-- 
After tragedy, and farce, "OMG poneys!"



More information about the lfs-support mailing list