update-grub help

Tom H tomh0665 at gmail.com
Wed Jun 2 12:14:57 UTC 2010


On Wed, Jun 2, 2010 at 5:54 AM, Dave Howorth <dhoworth at mrc-lmb.cam.ac.uk> wrote:
> Tom H wrote (rearranged):
>> Before you do this you could check whether the new device map file
>> allows you to find the OpenSuse partition with grub-probe with
>> grub-probe --device-map=/root/device.map --target=drive --device /dev/hdg
>> which should output (hd6), assuming that /dev/sdg is the OpenSuse
>> disk.
>
> I did this and it does indeed output (hd6)
>
>> Run either
>> grub-setup --root-device='(hd0,X)' --device-map=/root/device.map '(hd0)'
>> where X is X of the sdaX on which /boot resides
>> or
>> grub-setup --device-map=/root/device.map '(hd0)'
>
> I ran the latter one but when I rebooted it behaved the same as before.
> It seems that grub just doesn't see hd6. A grub ls command prints info
> for hd0 through hd5, correctly listing the partitions. But no mention of
> hd6.
>
> It's another one of these situations where running grub commands from
> within a running Linux system gives different results than when running
> grub 'raw' at boot time.
>
> FWIW, I've put the output from boot_info_script at
> <http://pastebin.ubuntu.com/443239/> AFAICT, it's exactly what I'd
> expect. sda is the Ubuntu disk, sdf is the openSUSE one.
>
> I'll keep googling for ways to let the BIOS know about the drive (the
> mobo BIOS does load the plugin card's BIOS while initialising) and/or
> ways to let grub2 use drives that the BIOS can't see but Linux can.

The first thing that I did after seeing your email is recheck
grub-probe's help output for some extra option that you could use.
Nothing, except possibly adding "-v" to see some extra output that
*might* give a hint at what's wrong. I am also glad that you used the
second command because every time that I read the help page, I wonder
whether --root-device is / or /boot if they are different...

Thanks for the bootinfoscript output but I can't see anything there to help...

I had said
grub-probe --device-map=/root/device.map --target=drive --device /dev/sdg
but OpenSuse is on sdf. What do the following output:

grub-probe --device-map=/root/device.map --target=fs --device /dev/sdf1
grub-probe --device-map=/root/device.map --target=fs /suse-11.2
(should be ext4)

grub-probe --device-map=/root/device.map --target=fs_uuid --device /dev/sdf1
grub-probe --device-map=/root/device.map --target=fs_uuid /suse-11.2
(should be 3ae27543-6f83-4628-9cd2-b507a6f51d1a)

grub-probe --device-map=/root/device.map --target=drive --device /dev/sdf1
grub-probe --device-map=/root/device.map --target=drive /suse-11.2
(should be (hd5))

grub-probe --device-map=/root/device.map --target=device --device /dev/sdf1
grub-probe --device-map=/root/device.map --target=device /suse-11.2
(should be /dev/sdf1)




More information about the ubuntu-users mailing list