[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#408571: FC4 not detected correctly



clone 408571 -1 -2 -3
retitle -1 Should support separate /boot shared with existing OS
reassign -2 grub
retitle -2 FindInitrdName() should also check for 'initrd$version.img'
severity -2 wishlist
thanks

On Tuesday 30 January 2007 17:53, andremachado wrote:
> Both the commands gave blank outputs.
> I guess it is because the /boot content is in a separated ext3
> partition, and the remaining files of each OS are on separated lvm
> volumes. You can examine the attached fstab.

I've done some further analysis and AFAICT there are two issues that 
prevent recognizing the Fedora installation in your case:
- os-prober does not support operating systems that have their root
  partition on an LVM volume; I've created a patch to fix that
- os-prober does not scan partitions that are already mounted;
  in your case there are two problems with this:
  - because you mounted /fedora, it would not be detected even with
    LVM support in os-prober
  - because you used the same /boot for both Fedora and Debian,
    os-prober would not have been able to mount it while analyzing the
    Fedora root partition

This left me somewhat confused as to how _any_ entries for Fedora ended up 
in your grub configuration. Your log shows that the entries do in fact 
not come from os-prober, but from update-grub. This is a side effect of 
the shared /boot directory.

The relevant lines in the log that show this are:
grub-installer: Generating /boot/grub/menu.lst
grub-installer: Searching for splash image ... 
grub-installer: found: /boot/grub/splash.xpm.gz
grub-installer: Found kernel: /vmlinuz-2.6.17-2-686
grub-installer: Found kernel: /vmlinuz-2.6.11-1.1369_FC4smp
grub-installer: Found kernel: /vmlinuz-2.6.11-1.1369_FC4
grub-installer: Updating /boot/grub/menu.lst ... 
grub-installer: done

So, it is update-grub that fails to detect your initrds:
initrd-2.6.11-1.1369_FC4smp.img
initrd-2.6.11-1.1369_FC4.img

A check of the update-grub code shows that the function FindInitrdName() 
only supports:
initrd${version}, initrd.img${version}, and initrd-lvm${version}
but not:
initrd${version}.img.

Cloning this report to grub as I feel that this is a valid naming scheme 
that should be supported.

Note that detecting the kernel and initrd this way will never lead to a 
correct configuration as it will assume the root partition to be the 
Debian system, not the Fedora system. So it would try to boot your Debian 
system with the Fedora kernel...
Not sure how that could be prevented in update-grub, so the conclusion may 
well be that sharing a /boot partition over different distributions is 
not such a good idea, especially as the broken entries will be generated 
again and again every time you update your Debian kernel.

Cheers,
FJP

Attachment: pgpwFF8NF0vqH.pgp
Description: PGP signature


Reply to: