1

I have multiple OS's installed on my laptop, and am running grub from Ubuntu to boot them. If I run sudo update grub it finds all the systems, as you can see in the image.

1

The problem is that after I reboot the system, it remains the same as it was when I originally installed Grub.

Here is the grub.cfg file:

part 1

part 2

To rephrase the problem, I am getting all the options listed in the grub.cfg file, but it only includes the OS's I had when I originally installed Ubuntu with grub on it. Whenever I run sudo update-grub, it shows that it detected new systems, but does not write them to grub.cfg. At least that's what I think is happening.

If I should include any other files, or information, please let me know.

karel
  • 114,770
  • 2
    When you turn on your laptop which OS appear on grub menu ? – kannzzmm2 Dec 28 '19 at 19:48
  • In Terminal run grep menuentry /boot/grub/grub.cfg and post up output. – Paul Benson Dec 28 '19 at 20:13
  • It looks like it is looping, or finding same partitions over & over. So then is update to grub not written? – oldfred Dec 28 '19 at 20:22
  • @PaulBenson I added the grub.cfg to the post. – An unnasuming being Dec 28 '19 at 20:44
  • @kannzzmm2 All the menu entries in the grub.cfg file appear there, but I can not get it to update. – An unnasuming being Dec 28 '19 at 20:45
  • @oldfred I am not sure why it is looping, and if that is part of the problem, but it is most certainly detecting them. The problem is that (I think) it does not write the updates to the grub.cfg file. – An unnasuming being Dec 28 '19 at 20:47
  • Does the system where you enter update-grub actually own the MBR? You need to run that command on the owner of the MBR (only one OS can own the first sector of your media), OR make the OS you want to own it - take ownership & then run update-grub. The first stage of grub is the MBR and if it's pointing to another /boot/grub/grub.cfg file ; re-creating that grub.cfg file should do nothing. – guiverc Dec 28 '19 at 21:35
  • Since all the menu entries are shown in your grub file then what exactly isn't being updated? Are you trying to add or remove some of them? Do these menu entries boot you up into the respective systems? – Paul Benson Dec 28 '19 at 22:22
  • Your list may be so long you have to scroll down in the grub menu to see all the entries. With multiple installs, I typically turn os-prober off and only add entries I want to 40_custom. And often simple configfile entry to boot into other install's grub menu. https://askubuntu.com/questions/344125/how-to-add-a-grub2-menu-entry-for-booting-installed-ubuntu-on-a-usb-drive/344359#344359 – oldfred Dec 28 '19 at 22:32

2 Answers2

1

I had the exact same symptoms.

Turned out that the Ubuntu 20.04 installer had incorrectly mounted the Windows 10 EFI partition in /etc/fstab at /boot/efi for the Ubuntu installation.

This meant that new kernels and other grub updates were being added to the wrong grub.cfg in the wrong partition.

I just mounted the correct Ubuntu EFI partition in /etc/fstab and updated grub and bingo, my grub menu was properly updated.

Not sure if this is a bug in the Ubuntu dual boot installer for EFI or just my system.

Hope this is helpful.

Artur Meinild
  • 26,018
jimmy90
  • 11
0

Please try sudo grub-install /dev/sda within terminal and check output.

Eliah Kagan
  • 117,780
schollsky
  • 21
  • 1