I see a number of posts describing issues with the “latest upgrade” . . . had some issues the other day with the “kernel-firmware-qcom” package, but today in my main squeeze TW I ran the zypper dup -l and it was only 189 packkages??? including the new 6.0 kernel . . . all seemed to go well.
I rebooted and got back into the GUI . . . went to YaST to run Bootloader and it errored out, I took a screenshot, but in a rush this AM . . . it said something like “grub2 installation failed, efibootmgr couldn’t find a valid entry.” I shut down. On cold boot the GUI grub menu was gone and the grub tty was there. I don’t know how to use that, so I rebooted my SuperGrub2 disk and got back into TW.
I tried to run “sudo grub2-install” and that errored out as well. Then I ran the “grub2-mkconfig” command and that went through w/o error. I shut it down.
On cold boot, back to the grub error window. Used SG2 to get back in . . . but now out of ideas on the fix.
TW is my master Grub controller, but something isn’t working in grub?? possibly relating to 6.0 kernel???
So, seemingly a bit “odd” that I was able to get grub menu this morning, but after running the zypper . . . problems?? But possibly this is some kind of cross-contamination from running a Lubuntu upgrade yesterday?? I have “removed” grub from that install, but looking at “efibootmgr” it seems to be showing “ubuntu” as current boot, but I’m in TW . . . and “grub” is listed as “0002”??? dead last on the list, rather than up top? And that is after running the “grub2-mkconfig” command in TW, etc. And there doesn’t seem to be an “0001” in the list??
How do I edit the “efibootmgr” again?? sudo nano efibootmgr??
efibootmgr
BootCurrent: 0000
BootOrder: 0001,0005,0010,0008,0080,0000,000F,0006,0004,000E,000C,0009,000D,0003,0002
Boot0000* ubuntu
Boot0002* grub
Boot0003* lubuntu1910
Boot0004* grub-secureboot
Boot0005* geckolinux
Boot0006* tumbleweed-secureboot
Boot0008* ubuntu
Boot0009* ubuntu
Boot000C* tumbleweed-secureboot
Boot000D* Debian
Boot000E* debian
Boot000F* ubuntu
Boot0010* ubuntu
Boot0080* Mac OS X
Boot0081* Mac OS X
Boot0082*
BootFFFF*
New day, again had to use SG2 disk to boot back into TW. In prior episodes where another system “broke grub” I had to chroot into TW via console and then launch YaST to repair the Bootloader. In this case I can boot TW and get to the GUI, but only by using the SuperGrub2 disk.
I checked YaST and grub2 is showing as installed, but trying to install it again leads to error. And also traditionally, running the “grub2-mkconfig” command would bring TW back online as the master grub controller, but in this case, seemingly not??
~> sudo grub2-install
Installing for x86_64-efi platform.
Could not delete variable: Invalid argument
Could not delete variable: Invalid argument
grub2-install: error: efibootmgr failed to register the boot entry: Block device required.
buto@buto-MacPro:~> sudo grub2-mkconfig -o /boot/grub2/grub.cfg
[sudo] password for root:
Generating grub configuration file ...
Found theme: /boot/grub2/themes/openSUSE/theme.txt
Found linux image: /boot/vmlinuz-6.0.0-1-default
Found initrd image: /boot/initrd-6.0.0-1-default
Found linux image: /boot/vmlinuz-5.19.12-1-default
Found initrd image: /boot/initrd-5.19.12-1-default
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Found Debian GNU/Linux bookworm/sid on /dev/sda6
Found openSUSE Tumbleweed on /dev/sdb12
Found Manjaro Linux (22.0.0) on /dev/sdb7
Found openSUSE Tumbleweed on /dev/sdb8
Found Mac OS X on /dev/sdc2
Found Linux Mint 20.3 Una (20.3) on /dev/sdc5
Found Debian GNU/Linux bookworm/sid on /dev/sdc6
Found Ubuntu Kinetic Kudu (development branch) (22.10) on /dev/sdc7
done
There were 33 upgrades this morning . . . all of them were “kernel-firmware xxx” items . . . about to shut down and see if anything has been “repaired” where previously there was “no problem”???
After running the “grub2-mkconfig xxxx” command for the second or third try . . . on cold boot, instead of going to the grub error or rescue window it just loaded a blank white page??
Still had to then reboot to SG2 and select TW to get into a system . . . but this time selecting “efi/bootxxxx” option the master grub menu did show up . . .
I guess the question is how to get that “grub” option back online as the first option on cold boot???
efibootmgr -c -L "My openSUSE" -l ""\\EFI\\opensuse\\grubx64.efi"
Use efibootmgr --help to see all the options, you should switch to root user, else you will be adding sudo to every command, understand I don’t support it, so if something breaks, blame sudo
OK, thanks for the hints . . . not sure if I can put it into action. My question(s) remains, why can’t I get “sudo grub2-install” to reinstall a working grub menu? Why does the “grub2-mkconfig xxx” command also fail to restore a working grub menu?? Why was the machine booting to grub error tty and then after I ran the 33 kernel-firmware updates it now boots to a white screen only?? These kind of questions.
When I boot the SG2 disk if I scroll down past the “Linux /boot/vmlinuz-6.0.0-1-default (hd6, gpt7)” line to the line that seems to be selecting the “sda5” /efi/boot partition, which shows as “(hd6, gpt5)/efi/opensuse/grubx64.efi (hd6, gpt5)” . . . that boots what is/was the working grub menu. From there I was able to boot into another OS. There is another line under it with the same data except for the /EFI/opensuse xxxxx with the caps.
My issue is that TW is the “grub controller” system, but I don’t just have TW installed; I have other choices, so getting the grub menu to show up on cold boot as it was doing yesterday morning, is where I’d like to be.
Well, thanks for the insights . . . if I knew what I was doing I possibly might not have this problem . . . . I’m not tryiing to “conceal” anything, I’m posting the returns of what I’ve tried to do; and those actions in the past were usually enough to restore grub function, but in this case, seemingly not?
The data that you posted as “partial” was the total copy/paste error output from trying to run YaST Bootloader . . . it doesn’t run cleanly through, it stops and provides that error data. The only thing that wouldn’t copy was the word “Error” . . . which I believe I provided as the explanation for that data. I haven’t have YaST Bootloader ever return any error in many uses of it, weekly.
Still having issues with getting the grub menu to launch on cold boot . . . tried to reinstall it several times, that fails as posted here.
Today I’m over in Gecko Rolling Mate and zypper dup -l showed “99” packages to upgrade, including the new 6.0 kernel . . . at around “100” zypper flipped into a huuuge number of depmod lines, many of them mentioning “nvidia,” . . . I have an nvidia card, but not using proprietary driver . . . seemed to install it anyway . . . . It’s been like an hour in the process.
I haven’t seen the kind of depmod data that is showing up previously:
Skipping BTF generation for /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-modeset.ko due to unavailability of vmlinux
CC [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-peermem.mod.o
LD [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-peermem.ko
BTF [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-peermem.ko
Skipping BTF generation for /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-peermem.ko due to unavailability of vmlinux
CC [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-uvm.mod.o
LD [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-uvm.ko
BTF [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-uvm.ko
Skipping BTF generation for /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia-uvm.ko due to unavailability of vmlinux
CC [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia.mod.o
LD [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia.ko
BTF [M] /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia.ko
Skipping BTF generation for /usr/src/kernel-modules/nvidia-470.141.03-default/nvidia.ko due to unavailability of vmlinux
make[2]: Leaving directory '/usr/src/linux-6.0.0-1-obj/x86_64/default'
make[1]: Leaving directory '/usr/src/linux-6.0.0-1'
ld -T /usr/src/linux-obj/x86_64/default/scripts/module.lds -r -o nv-linux.o
nvidia.mod.o nvidia/nv-interface.o
/
/usr/src/kernel-modules/nvidia-470.141.03-default /
rm -f -r conftest
make[1]: Entering directory '/usr/src/linux-5.19.13-1'
make[2]: Entering directory '/usr/src/linux-5.19.13-1-obj/x86_64/default'
CLEAN /usr/src/kernel-modules/nvidia-470.141.03-default
CLEAN /usr/src/kernel-modules/nvidia-470.141.03-default/Module.symvers
make[2]: Leaving directory '/usr/src/linux-5.19.13-1-obj/x86_64/default'
make[1]: Leaving directory '/usr/src/linux-5.19.13-1'
/
Modprobe blacklist files have been created at /usr/lib/modprobe.d to prevent Nouveau from loading. This can be reverted by deleting /usr/lib/modprobe.d/nvidia-*.conf.
*** Reboot your computer and verify that the NVIDIA graphics driver can be loaded. ***
pbl: 2022-10-12 10:09:26 <3> pbl-4389 run_command.294: '/usr/lib/bootloader/grub2-efi/add-option nosimplefb=1' failed with exit code 2, output:
<<<<<<<<<<<<<<<<
/etc/default/grub: No such file or directory
[INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] pbl: 2022-10-12 10:09:26 <3> pbl-4389 run_command.294: '/usr/lib/bootloader/grub2-efi/config' failed with exit code 1, output:
<<<<<<<<<<<<<<<<
grub2-mkconfig: command not found
[INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT] [/INDENT]
Not sure if there is any more of a problem in Gecko than I had with losing grub in TW . . . just sayin’ it seems like 6.0 is not “polished”???
Hi
All good here with Nvidia (250.56.06 driver) and 6.0 kernel, all good on Intel and AMD with MicroOS Desktop with 6.0 kernel. The intel one is dual boot with WinXI but I just use efibootmg -n 0001 to boot if needed.
Glad it’s going well with yr machine . . . is that a cMac Pro???
But this “efibootmgr -n 0001” command is interesting . . . like if I wanted to boot “grub” I could use “efibootmgr -n 0002” ??? But question is where is that going to be entered??? The problem is right now it’s either cold booting to the white window, or is I use the OSX boot manager then I have to pick either OSX, or the Super Grub2 disk . . . and then I have some options . . . to boot systems.
Problem has been so far that TW YaST Bootloader isn’t able to complete its mission to run “os prober” . . . so some of the kernel upgrades aren’t registering . . . . Grub is starting to . . . become dysfunctional . . . ??? Two days back when I cold booted the machine the grub menu loaded and all was well, etc. Then after running the zypper dup -l . . . grub was gone . . . . Had a grub error window where perhaps your “efibootmgr -n” coomand might have been useful, but now we have only whiteness . . . endless whiteness.
Hi
Any system you boot that has efibootmgr present you can use the -n option. I have an old MackBook (late 2007) I can just browse to the efi file and boot, you should be able to do the same. Any system that has browse the EFI file can browse and select, likewise if can get to the efi shell (non-secure boot only) can run efi shell commands to boot.
OK, I get that the efi file or folder “exists” in physical space . . . but have to say this “browse the file” concept is new to me . . . . Are there some wiki’s on that??
In this case I have to use Super Grub 2 to select a linux system . . . I’m not able to boot to a TTY, to then enter browsing data . . . etc. Once I’ve used SG2 to boot a system, I’m in . . . .
Question is how to get to a grub window, or how to restore grub function in TW??
Hi
The efi browse is a system BIOS feature, nothing to do any bootloader software installed.
For example on my HP systems I can press the F9 key to get to the boot menu, then I get a ‘Boot option’ to select a EFI file, so it’s just like a ncurses directory structure of the partition type ef00, so you can browse and pick any file eith the extension .efi to see if you can boot.
On the Mac, if you hold the option key while powering on, you should see a list of EFI boot options to select?
Ah, right . . . I went through each of those disks the other day . . . two boot to LM . . . and two boot to grub errorr . . . so right, that would get me back to the grub error window and I could run some commands there . . . . I still would like to get back to having the GUI grub menu appear on cold boot, rather than having to use the option key or the SG 2 disk . . . to then boot a system.
I’m not trying to “conceal” anything, I’m posting the returns of what I’ve tried to do; and those actions in the past were usually enough to restore grub function, but in this case, seemingly not?
The data that you posted as “partial” was the total copy/paste error output from trying to run YaST Bootloader . . . it doesn’t run cleanly through, it stops and provides that error data. The only thing that wouldn’t copy was the word “Error” . . . which I believe I provided as the explanation for that data. I haven’t have YaST Bootloader ever return any error in many uses of it, weekly.
The outcome depends on the input, primarily on /etc/default/grub. Show its full content:
**erlangen:~ #** cat /etc/default/grub
# If you change this file, run 'grub2-mkconfig -o /boot/grub2/grub.cfg' afterwards to update
# /boot/grub2/grub.cfg.
# Uncomment to set your own custom distributor. If you leave it unset or empty, the default
# policy is to determine the value from /etc/os-release
GRUB_DISTRIBUTOR=Tumbleweed
GRUB_DEFAULT=saved
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=3
GRUB_CMDLINE_LINUX_DEFAULT="quiet loglevel=2 plymouth.enable=0 mitigations=auto"
GRUB_CMDLINE_LINUX=""
# Uncomment to automatically save last booted menu entry in GRUB2 environment
# variable `saved_entry'
# GRUB_SAVEDEFAULT="true"
#Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
# GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
#Uncomment to disable graphical terminal (grub-pc only)
GRUB_TERMINAL="gfxterm"
# The resolution used on graphical terminal
#note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE="auto"
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
# GRUB_DISABLE_LINUX_UUID=true
#Uncomment to disable generation of recovery mode menu entries
# GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
GRUB_DISABLE_OS_PROBER="false"
GRUB_ENABLE_CRYPTODISK="n"
SUSE_BTRFS_SNAPSHOT_BOOTING="true"
GRUB_USE_LINUXEFI="true"
GRUB_CMDLINE_XEN_DEFAULT="vga=gfx-1024x768x16"
GRUB_THEME=/boot/grub2/themes/openSUSE/theme.txt
GRUB_BACKGROUND=
**erlangen:~ #**
“yast2 bootloader” adds complexity. It’s confused on host erlangen. Run the following commands instead and post their output:
**erlangen:~ #** grub2-install
Installing for x86_64-efi platform.
Installation finished. No error reported.
**erlangen:~ #** update-bootloader
**erlangen:~ #**
OK, thanks for the etc/default/grub output suggestion, I’m away from that machine now, I’ll run it in the morning and post back.
But, as far as the “grub2-install” command . . . gotcha . . . already posted that data in post #5 . . . I’ve run it a couple of times . . . same error.
~> sudo grub2-install
Installing for x86_64-efi platform.
Could not delete variable: Invalid argument
Could not delete variable: Invalid argument
grub2-install: error: efibootmgr failed to register the boot entry: Block device required.