Bug#759388: Os-prober doesn't notice initrd files other than debian's one
package: os-prober
version: 1.64
Os-prober doesn't notice initrd files other than debian's one.
In a partiion I've Slackware. I created a initd.gz for slaclware
(generic kernel needs a initrd for ext4 module, if not I receive
a kernel panic) and tried to make grub set it from debian.
Please, consider
1) in Slackware partition there is a initrd.gz
===========================================
root@debian:~# ls /mnt/slackware/boot/
config elilo-ia32.efi inside.bmp System.map
vmlinuz
config-generic-3.10.17 elilo-x86_64.efi onlyblue.bmp System.map-
generic-3.10.17 vmlinuz-generic-3.10.17
config-huge-3.10.17 initrd.gz README.initrd System.map-
huge-3.10.17 vmlinuz-huge-3.10.17
efi
===========================================
2) os-prober doesn't notice it:
===========================================
root@debian:~# os-prober
/dev/sda2@/EFI/Microsoft/Boot/bootmgfw.efi:Windows Boot Manager:Windows:efi
/dev/sdc4:Slackware Linux (Slackware 14.1):Slackware:linux
===========================================
and after, to control:
===========================================
root@debian:~# linux-boot-prober /dev/sdc4
/dev/sdc4:/dev/sdc4::/boot/vmlinuz-generic-3.10.17::root=/dev/sdc4
/dev/sdc4:/dev/sdc4::/boot/vmlinuz-huge-3.10.17::root=/dev/sdc4
===========================================
3) update-grub2 obviuosly doent's set that initrd:
===========================================
root@debian:~# update-grub2
Creazione di grub.cfg...
Trovata immagine linux: /boot/vmlinuz-3.14-2-amd64
Trovata immagine initrd: /boot/initrd.img-3.14-2-amd64
Trovato Windows Boot Manager su /dev/sda2@/EFI/Microsoft/Boot/bootmgfw.efi
Trovato Slackware Linux (Slackware 14.1) su /dev/sdc4
Adding boot menu entry for EFI firmware configuration
done
===========================================
4) the relevant part of /boor/grub/grub.cfg:
===========================================
menuentry 'Slackware Linux (Slackware 14.1)' --class gnu-linux --class gnu --
class os $menuentry_id_option 'osprober-gnulinux-simple-e76be8b8-55fb-47bd-
a5b7-2a30a50f4dbf' {
insmod part_gpt
insmod ext2
set root='hd2,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd2,gpt4 --hint-
efi=hd2,gpt4 --hint-baremetal=ahci2,gpt4 e76be8b8-55fb-47bd-a5b7-2a30a50f4dbf
else
search --no-floppy --fs-uuid --set=root e76be8b8-55fb-47bd-
a5b7-2a30a50f4dbf
fi
linux /boot/vmlinuz-generic-3.10.17 root=/dev/sdc4
}
submenu 'Opzioni avanzate per Slackware Linux (Slackware 14.1)'
$menuentry_id_option 'osprober-gnulinux-advanced-e76be8b8-55fb-47bd-
a5b7-2a30a50f4dbf' {
menuentry 'Slackware Linux (Slackware 14.1) (su /dev/sdc4)' --class
gnu-linux --class gnu --class os $menuentry_id_option 'osprober-
gnulinux-/boot/vmlinuz-generic-3.10.17--e76be8b8-55fb-47bd-a5b7-2a30a50f4dbf'
{
insmod part_gpt
insmod ext2
set root='hd2,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd2,gpt4
--hint-efi=hd2,gpt4 --hint-baremetal=ahci2,gpt4 e76be8b8-55fb-47bd-
a5b7-2a30a50f4dbf
else
search --no-floppy --fs-uuid --set=root e76be8b8-55fb-47bd-
a5b7-2a30a50f4dbf
fi
linux /boot/vmlinuz-generic-3.10.17 root=/dev/sdc4
}
menuentry 'Slackware Linux (Slackware 14.1) (su /dev/sdc4)' --class
gnu-linux --class gnu --class os $menuentry_id_option 'osprober-
gnulinux-/boot/vmlinuz-huge-3.10.17--e76be8b8-55fb-47bd-a5b7-2a30a50f4dbf' {
insmod part_gpt
insmod ext2
set root='hd2,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd2,gpt4
--hint-efi=hd2,gpt4 --hint-baremetal=ahci2,gpt4 e76be8b8-55fb-47bd-
a5b7-2a30a50f4dbf
else
search --no-floppy --fs-uuid --set=root e76be8b8-55fb-47bd-
a5b7-2a30a50f4dbf
fi
linux /boot/vmlinuz-huge-3.10.17 root=/dev/sdc4
}
}
===========================================
i dont' understand why it's impossible to choose
between huge and generic kernel, and above all why
it lacks all occorrences of initrd
Reply to: