GRUB not detecting kernel upgrades on other distros (multi-boot)

I am on a multi-boot system with Manjaro controlling GRUB. Arch and Sabayon are also on there.

Though I have added new kernels to Sabayon, symlinked them and Sabayon says I am using the new kernels, they don’t show up in the GRUB menu even though I have successfully updated GRUB.

Is this a case of having to manually add the entries to grub.d?

Thanks in advance.

How? symlink what to what?[quote=“Trinakrian, post:1, topic:9663”]
Sabayon says I am using the new kernels
[/quote]

How does sabayon say that when you say Manjaro grub doesn’t pick up new kernel?
Your (manjaro) grub entry must already have the sym-link to new kernel.
Most OS’s (not Manjaro) create sym-link when kernel gets updated and so entry for Sabayon in Manjaro grub remains unchanged as it is booting the (same named) sym-link which now links to new kernel.

If still in doubt, print out
o Sabayon entry in Manjaro grub menu
o Sabayon entry in Sabayon grub.cfg
o contents of Sabayon’s /boot/ directory (including sym-links).

If you can do it, show what the sym-links link to in Sabayon /boot

[edit] for better clarification see

as it shows I created sym-links in Manjaro so I don’t have to update-grub.

Thanks for replying, hohlip. With Sabayon and Gentoo, as you may already know, you symlink new kernel sources. I’ve done it manually and with eselect. I haven’t had an issue with that:

Available kernel targets: [1] kernel-genkernel-x86_64-4.4.0-sabayon [2] kernel-genkernel-x86_64-4.5.0-sabayon [3] kernel-genkernel-x86_64-4.6.0-sabayon [4] kernel-genkernel-x86_64-4.7.0-sabayon *

How does Sabayon say that? That is the point of making the thread - I can’t figure out why it is saying I’m using 4.7 when I’m using 4.4. It suspect it is related to GRUB. When I list kernels while in Sabayon, it shows that I have 4.7 selected, yet only 4.4 shows up in GRUB menu when I reboot.

Grub.cfg has Sabayon, just kernel 4.4 and none of the other kernels I’ve added.

lrwxrwxrwx 1 root root 40 Sep 6 11:00 Initrd -> initramfs-genkernel-x86_64-4.7.0-sabayon -rw-r--r-- 1 root root 3801453 Sep 16 09:24 System.map-genkernel-x86_64-4.4.0-sabayon -rw-r--r-- 1 root root 3859422 Jun 9 05:51 System.map-genkernel-x86_64-4.5.0-sabayon -rw-r--r-- 1 root root 3910048 Jul 15 14:33 System.map-genkernel-x86_64-4.6.0-sabayon -rw-r--r-- 1 root root 3947044 Sep 17 05:55 System.map-genkernel-x86_64-4.7.0-sabayon lrwxrwxrwx 1 root root 37 Sep 6 11:00 bzImage -> kernel-genkernel-x86_64-4.7.0-sabayon drwxr-xr-x 2 root root 4096 Apr 15 20:58 grub -rw-r--r-- 1 root root 20814256 Sep 16 09:24 initramfs-genkernel-x86_64-4.4.0-sabayon -rw-r--r-- 1 root root 21278719 Jun 9 05:51 initramfs-genkernel-x86_64-4.5.0-sabayon -rw-r--r-- 1 root root 21398724 Jul 15 14:33 initramfs-genkernel-x86_64-4.6.0-sabayon -rw-r--r-- 1 root root 22921444 Sep 17 05:55 initramfs-genkernel-x86_64-4.7.0-sabayon -rw-r--r-- 1 root root 7391792 Sep 16 09:24 kernel-genkernel-x86_64-4.4.0-sabayon -rw-r--r-- 1 root root 7470832 Jun 9 05:51 kernel-genkernel-x86_64-4.5.0-sabayon -rw-r--r-- 1 root root 7553152 Jul 15 14:33 kernel-genkernel-x86_64-4.6.0-sabayon lrwxrwxrwx 1 root root 46 Sep 20 09:51 kernel-genkernel-x86_64-4.7.0-sabayon -> /usr/src/kernel-genkernel-x86_64-4.7.0-sabayon

I am wondering if I need to add a file to grub.d or something.

Just to remind ourselves…
You are already booting up Sabayon latest kernel 4.7
And you wonder why that is so even though it (this 4.7) doesn’t show up in Manjaro grub

I did ask what is the entry for Sabayon in Manjaro grub
(as well as Sabayon entry in Sabayon grub)

But as you noticed in your ls output

Initrd -> initramfs-genkernel-x86_64-4.7.0-sabayon
bzImage -> kernel-genkernel-x86_64-4.7.0-sabayon

Note these point to kernel 4.7 and therefore 4.7 should boot up if the grub entry list these.
Does it? Like this?

linux /boot/bzImage root=… xxxxx
initrd /boot/Initrd

Or are you saying the entry is

linux /boot/kernel-genkernel-x86_64-4.4.0-sabayon root=…“
initrd /boot/initramfs-genkernel-x86_64-4.4.0-sabayon”

Yet 4.7 is booted up and verified with “uname -a” ?

Show the grub entries please so we can know what we are talking about.

Thanks again gohlip. You’ve spent considerable time and effort with me and I’m grateful.

Let me clarify:

uname shows that I am using 4.7. Whenever I do updates, the output will tell me that I am booting 4.7.

Problem is that when GRUB comes up it isn’t updated and only shows 4.4 as an option.

Now, that wouldn’t in itself be much of an issue. I would just ignore it all because everything is running just fine.

The issue is that I want GRUB to reflect the kernels I have and allow me to choose because I always keep at least 2 to experiment with or as a back up if I update and the kernel gets angry. I’ve found booting with just one kernel and one kernel only to not be prudent.

I want to see all my kernels listed in GRUB. Even though I am updating GRUB the .cfg file only reflects 4.4.

Once again, we do not see your grub.cfg entries.
What (I can only guess here) I think is that 4.4 is the title or menuentry …er title - but what’s inside is in linux line and initrd line is not 4.4 but something else.

But since you’re contented (though I’m not), we’ll pass.

Oh… welcome.

Sorry, I was in the process of rebooting into Manjaro.

Here is what .cfg says about Sabayon:

### BEGIN /etc/grub.d/30_os-prober ### menuentry 'Gentoo Base System release 2.2 (on /dev/sdb2)' --class gentoo --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-b26db922-953c-437a-b7d2-afea2e4d792b' { savedefault insmod part_msdos insmod ext2 set root='hd1,msdos2' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2 b26db922-953c-437a-b7d2-afea2e4d792b else search --no-floppy --fs-uuid --set=root b26db922-953c-437a-b7d2-afea2e4d792b fi linux /boot/kernel-genkernel-x86_64-4.4.0-sabayon root=UUID=b26db922-953c-437a-b7d2-afea2e4d792b ro initrd /boot/initramfs-genkernel-x86_64-4.4.0-sabayon } submenu 'Advanced options for Gentoo Base System release 2.2 (on /dev/sdb2)' $menuentry_id_option 'osprober-gnulinux-advanced-b26db922-953c-437a-b7d2-afea2e4d792b' { menuentry 'Sabayon GNU/Linux (on /dev/sdb2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/kernel-genkernel-x86_64-4.4.0-sabayon--b26db922-953c-437a-b7d2-afea2e4d792b' { savedefault insmod part_msdos insmod ext2 set root='hd1,msdos2' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2 b26db922-953c-437a-b7d2-afea2e4d792b else search --no-floppy --fs-uuid --set=root b26db922-953c-437a-b7d2-afea2e4d792b fi linux /boot/kernel-genkernel-x86_64-4.4.0-sabayon root=UUID=b26db922-953c-437a-b7d2-afea2e4d792b ro initrd /boot/initramfs-genkernel-x86_64-4.4.0-sabayon } menuentry 'Sabayon GNU/Linux, with Linux x86_64-4.4.0-sabayon (on /dev/sdb2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/kernel-genkernel-x86_64-4.4.0-sabayon--b26db922-953c-437a-b7d2-afea2e4d792b' { savedefault insmod part_msdos insmod ext2 set root='hd1,msdos2' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2 b26db922-953c-437a-b7d2-afea2e4d792b else search --no-floppy --fs-uuid --set=root b26db922-953c-437a-b7d2-afea2e4d792b fi linux /boot/kernel-genkernel-x86_64-4.4.0-sabayon root=UUID=b26db922-953c-437a-b7d2-afea2e4d792b ro initrd /boot/initramfs-genkernel-x86_64-4.4.0-sabayon } menuentry 'Sabayon GNU/Linux, with Linux x86_64-4.4.0-sabayon (recovery mode) (on /dev/sdb2)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/boot/kernel-genkernel-x86_64-4.4.0-sabayon-root=UUID=b26db922-953c-437a-b7d2-afea2e4d792b ro single init_opts=single-b26db922-953c-437a-b7d2-afea2e4d792b' { savedefault insmod part_msdos insmod ext2 set root='hd1,msdos2' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2 b26db922-953c-437a-b7d2-afea2e4d792b else search --no-floppy --fs-uuid --set=root b26db922-953c-437a-b7d2-afea2e4d792b fi linux /boot/kernel-genkernel-x86_64-4.4.0-sabayon root=UUID=b26db922-953c-437a-b7d2-afea2e4d792b ro single init_opts=single initrd /boot/initramfs-genkernel-x86_64-4.4.0-sabayon } }

Okay, thanks. A question. Can you get back old kernel say 4.6 with “eselect kernel”?
(whatever the grub entry says)

Nope. I can’t.

I made a copy of this thread on the Sabayon forums and the consensus is to add the kernels manually to grub.d. I’m a bit heavy on the workload right now, so haven’t been able to tackle this, but to those here I’d be interested if you guys think this is a direction to take.

Thanks a bunch!

Thanks too. Learnt something myself.
Cheers.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Forum kindly sponsored by Bytemark