Bug#686754: Is there any hope that this bug will be fixed?

Lukas Schwaighofer lukas at schwaighofer.name
Wed Jan 15 10:48:21 UTC 2014


Hi Karsten,

On Wed, 15 Jan 2014 10:35:55 +0100
Karsten Malcher <debian at dct.mine.nu> wrote:
> Calling os-prober only give this information:
> # os-prober
> /dev/sda2:Debian GNU/Linux (7.2):Debian:linux
> /dev/sda3:Debian GNU/Linux (jessie/sid):Debian1:linux

For type "linux" os-prober calles linux-boot-prober next with the
partition as a parameter. For /dev/sda3 it would call
# linux-boot-prober /dev/sda3
See /usr/share/doc/os-prober/README for more information.

> It seems not to merge the information with the UUID of the partitions.
> I found an other interesting effect, which explains that this bug has
> not been found. Now an grub-update produces the correct grub.cfg.
> (...)
> 
> What i did in the history:
> 1. I unpacked an backup of /dev/sdb1 (Grub partition with Debian
> wheezy) to /dev/sda3
> 2. I altered the fstab of the copy and run update-grub (After this i
> got this wrong grub.cfg)
> 3. I boot from /dev/sda3 and made an system-upgrade from wheezy to
> jessie
> 4. After the upgrade i run update-grub again from /dev/sdb1 to
> actualize the new kernel on /dev/sda3 (Now grub.cfg is correct)
> 
> Is it possible that the (wrong) information is extraced from
> initrd.img ?

To my knowledge linux-boot-prober does the following:
* Mount the given partition read-only to a temporary directory
* Read the /etc/fstab of this partition to check if /boot is on a
  separate partition. If so, it is also mounted.
* Read and parse the boot loader configuration from the temporary
  directory. For grub2 that is boot/grub/grub.cfg. The parameters to
  the linux kernel (the root=… directive that was wrong in your case)
  should be directly taken from this file.
* Unmount everything again

So your report from your message #15 makes sense, if
the /boot/grub/grub.cfg file on sda3 (I'm assuming you do not have a
separate boot partition) previously contained the "wrong" parameters for
the Linux kernel
(root=UUID=5c902625-e63e-446f-a5c5-c24a1176dec7 ro single).

Regards
Lukas



More information about the Pkg-grub-devel mailing list