I have a dual-boot system, on /dev/sdb4 I have Gentoo, and on /dev/sdb5 I installed Ubuntu 18.04 afterwards. My boot partition is /dev/sdb2, and I let Ubuntu handle the whole bootloader stuff. And that worked well, Ubuntu found my Gentoo installation, added it to Grub, and I was able to boot into both operating systems.

Now I updated the Kernel within Gentoo, recompiled it and emerge --depcleaned, so the old Kernel is gone now. Didn't think much about it.

But now I can't boot into Gentoo anymore. There's still a Grub entry for it, but it doesn't work, so Grub boots into Ubuntu nonetheless. I've tried sudo grub-install /dev/sdb again, and also update-grub from within Ubuntu. It still says that it finds the Gentoo installation, and there is still a Grub entry for it, but it is not bootable.

I have mounted both Gentoo's and Ubuntu's /boot directory to /dev/sdb2, but let Ubuntu clean it in its own installation, so I fear that Gentoo's /boot directory points to the partition that Ubuntu has erased and created anew.

I'm still on a BIOS-system, by the way. No UEFI yet.

How can I repair this mess without having to go through reinstalling kind of everything?

  • For start show us the content of grub.cfg. fstab can be helpful too. gentoo doesn't delete old kernel with emerge --depcleaan, just removes its sources. If you compiled new kernel then most probably all all you need to do is copy new image to /boot/ and update grub config. You can do all these stuff from within ubuntu. – jimmij Mar 9 '19 at 9:26
  • @jimmij: Thank you very much. Indeed I just had to do make install on the gentoo kernel to get it to the /boot partition and then grub-mkconfig in Ubuntu. However, I had to delete the grub.cfg file before as grub-mkconfig doesn't seem to overwrite it, if present. Now I have a functional dual-boot system again. Thank you. :) – Sonderoffizier Guck Mar 10 '19 at 8:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.