How to fix boot menu to dual boot after turning off Secureboot

After I just installed Garuda next to Fedora on my pc, I was expecting both to be available in the boot menu, but there was only the Fedora Grub with no Garuda there. I thought I’d have to change the boot sequence in UEFI, and did find an option for Garuda there, is was #2 after Fedora. Bringing it to #1 let me boot Garuda, but that boot menu didn’t have Fedora in it.

Then I realized I had Secure Boot turned on and disabled it - iirc it doesn’t allow for Grub to load but will boot straight to the OS that it’s “bound to” or sth?
I’m unsure where to go from here:
Found dual-boot problems A and B in the forum, but they’re both with windows and don’t mention Secure Boot, so I’m not sure if that solution applies to me:

To I actually need to chroot from the live ISO (or possibly from Fedora?) to reinstall Grub, or can I maybe just reinstall it from Garuda?
Thanks a lot!

╰─λ garuda-inxi
System:
Kernel: 6.11.3-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: hpet avail: acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=c016f38e-30bb-4c56-94f3-5a33e3187ac1 rw rootflags=subvol=@
quiet loglevel=3 ibt=off
Desktop: KDE Plasma v: 6.2.0 tk: Qt v: N/A info: frameworks v: 6.6.0
wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Desktop System: Micro (HK) Tech product: HX80G v: N/A
serial: <superuser required>
Mobo: Shenzhen Meigao Equipment model: F6BBA serial: <superuser required>
uuid: <superuser required> UEFI: American Megatrends LLC. v: 0.22
date: 12/13/2022
CPU:
Info: model: AMD Ryzen 7 5800H with Radeon Graphics bits: 64 type: MT MCP
arch: Zen 3 gen: 3 level: v3 note: check built: 2021-22
process: TSMC n7 (7nm) family: 0x19 (25) model-id: 0x50 (80) stepping: 0
microcode: 0xA50000D
Topology: cpus: 1x dies: 1 clusters: 1 cores: 8 threads: 16 tpc: 2
smt: enabled cache: L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 4 MiB
desc: 8x512 KiB L3: 16 MiB desc: 1x16 MiB
Speed (MHz): avg: 2408 min/max: 400/4463 boost: enabled scaling:
driver: amd-pstate-epp governor: powersave cores: 1: 2408 2: 2408 3: 2408
4: 2408 5: 2408 6: 2408 7: 2408 8: 2408 9: 2408 10: 2408 11: 2408 12: 2408
13: 2408 14: 2408 15: 2408 16: 2408 bogomips: 102208
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 23 [Radeon RX 6600/6600
XT/6600M] driver: amdgpu v: kernel arch: RDNA-2 code: Navi-2x
process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 4 speed: 16 GT/s
lanes: 16 ports: active: HDMI-A-1 empty: DP-1, DP-2, HDMI-A-2, Writeback-1
bus-ID: 03:00.0 chip-ID: 1002:73ff class-ID: 0300
Device-2: Advanced Micro Devices [AMD/ATI] Cezanne [Radeon Vega Series /
Radeon Mobile Series] driver: amdgpu v: kernel arch: GCN-5 code: Vega
process: GF 14nm built: 2017-20 pcie: gen: 3 speed: 8 GT/s lanes: 16
link-max: gen: 4 speed: 16 GT/s ports: active: none empty: HDMI-A-3
bus-ID: 07:00.0 chip-ID: 1002:1638 class-ID: 0300 temp: 36.0 C
Display: wayland server: X.org v: 1.21.1.13 with: Xwayland v: 24.1.2
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu,amdgpu display-ID: 0
Monitor-1: HDMI-A-1 res: 1920x1080 size: N/A modes: N/A
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: radeonsi device: 2 drv: swrast gbm: drv: kms_swrast
surfaceless: drv: radeonsi wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.2.4-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 6600M (radeonsi
navi23 LLVM 18.1.8 DRM 3.59 6.11.3-zen1-1-zen) device-ID: 1002:73ff
memory: 7.81 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.3.295 layers: 7 device: 0 type: discrete-gpu name: AMD
Radeon RX 6600M (RADV NAVI23) driver: mesa radv v: 24.2.4-arch1.1
device-ID: 1002:73ff surfaces: xcb,xlib,wayland device: 1
type: integrated-gpu name: AMD Radeon Graphics (RADV RENOIR)
driver: mesa radv v: 24.2.4-arch1.1 device-ID: 1002:1638
surfaces: xcb,xlib,wayland device: 2 type: cpu name: llvmpipe (LLVM
18.1.8 256 bits) driver: mesa llvmpipe v: 24.2.4-arch1.1 (LLVM 18.1.8)
device-ID: 10005:0000 surfaces: xcb,xlib,wayland
Audio:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 21/23 HDMI/DP Audio
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 03:00.1 chip-ID: 1002:ab28 class-ID: 0403
Device-2: Advanced Micro Devices [AMD/ATI] Renoir Radeon High Definition
Audio driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16
link-max: gen: 4 speed: 16 GT/s bus-ID: 07:00.1 chip-ID: 1002:1637
class-ID: 0403
Device-3: Advanced Micro Devices [AMD] ACP/ACP3X/ACP6x Audio Coprocessor
driver: N/A alternate: snd_pci_acp3x, snd_rn_pci_acp3x, snd_pci_acp5x,
snd_pci_acp6x, snd_acp_pci, snd_rpl_pci_acp6x, snd_pci_ps,
snd_sof_amd_renoir, snd_sof_amd_rembrandt, snd_sof_amd_vangogh,
snd_sof_amd_acp63 pcie: gen: 3 speed: 8 GT/s lanes: 16 link-max: gen: 4
speed: 16 GT/s bus-ID: 07:00.5 chip-ID: 1022:15e2 class-ID: 0480
Device-4: Advanced Micro Devices [AMD] Family 17h/19h HD Audio
vendor: Realtek driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s
lanes: 16 link-max: gen: 4 speed: 16 GT/s bus-ID: 07:00.6
chip-ID: 1022:15e3 class-ID: 0403
Device-5: C-Media Audio Adapter (Unitek Y-247A)
driver: cmedia_hs100b,snd-usb-audio,usbhid type: USB rev: 1.1 speed: 12 Mb/s
lanes: 1 mode: 1.1 bus-ID: 1-4:2 chip-ID: 0d8c:0014 class-ID: 0300
API: ALSA v: k6.11.3-zen1-1-zen status: kernel-api with: aoss
type: oss-emulator tools: N/A
Server-1: PipeWire v: 1.2.5 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Intel Ethernet I226-V driver: igc v: kernel pcie: gen: 2
speed: 5 GT/s lanes: 1 port: N/A bus-ID: 04:00.0 chip-ID: 8086:125c
class-ID: 0200
IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
Device-2: MEDIATEK MT7921K Wi-Fi 6E 80MHz driver: mt7921e v: kernel pcie:
gen: 2 speed: 5 GT/s lanes: 1 bus-ID: 05:00.0 chip-ID: 14c3:0608
class-ID: 0280
IF: wlp5s0 state: up mac: <filter>
Info: services: NetworkManager, smbd, systemd-timesyncd, wpa_supplicant
Bluetooth:
Device-1: MediaTek Wireless_Device driver: btusb v: 0.8 type: USB rev: 2.1
speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-4:4 chip-ID: 0e8d:0608
class-ID: e001 serial: <filter>
Report: btmgmt ID: hci0 rfk-id: 0 state: up address: N/A
Drives:
Local Storage: total: 1.82 TiB used: 22.32 GiB (1.2%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Western Digital
model: WD Blue SN570 2TB size: 1.82 TiB block-size: physical: 512 B
logical: 512 B speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter>
fw-rev: 234200WD temp: 31.9 C scheme: GPT
Partition:
ID-1: / raw-size: 930.71 GiB size: 930.71 GiB (100.00%)
used: 22.3 GiB (2.4%) fs: btrfs dev: /dev/nvme0n1p4 maj-min: 259:4
ID-2: /boot/efi raw-size: 600 MiB size: 598.8 MiB (99.80%)
used: 18.7 MiB (3.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 930.71 GiB size: 930.71 GiB (100.00%)
used: 22.3 GiB (2.4%) fs: btrfs dev: /dev/nvme0n1p4 maj-min: 259:4
ID-4: /var/log raw-size: 930.71 GiB size: 930.71 GiB (100.00%)
used: 22.3 GiB (2.4%) fs: btrfs dev: /dev/nvme0n1p4 maj-min: 259:4
ID-5: /var/tmp raw-size: 930.71 GiB size: 930.71 GiB (100.00%)
used: 22.3 GiB (2.4%) fs: btrfs dev: /dev/nvme0n1p4 maj-min: 259:4
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 15.05 GiB used: 0 KiB (0.0%) priority: 100
comp: zstd avail: lzo,lzo-rle,lz4,lz4hc,842 max-streams: 16 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 39.6 C mobo: 30.0 C
Fan Speeds (rpm): N/A
GPU: device: amdgpu temp: 33.0 C device: amdgpu temp: 31.0 C mem: 34.0 C
fan: 0 watts: 4.00
Info:
Memory: total: 16 GiB note: est. available: 15.05 GiB used: 4.31 GiB (28.7%)
Processes: 356 Power: uptime: 20m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 6.01 GiB services: org_kde_powerdevil,
power-profiles-daemon, upowerd Init: systemd v: 256 default: graphical
tool: systemctl
Packages: pm: pacman pkgs: 1671 libs: 525 tools: pamac,paru Compilers:
gcc: 14.2.1 Shell: garuda-inxi default: fish v: 3.7.1 running-in: konsole
inxi: 3.3.36
Garuda (2.6.26-1):
System install date:     2024-10-11
Last full system update: 2024-10-11
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       Probably (Run as root to verify)
Failed units:

Yes.

3 Likes

Also you might be interested in installing rEFInd boot loader if you are into dual booting. It can be themed and stuff and also handles dual boot nicely.

To top it all off it is extremely easy and simple to configure and use , I am using it rn with the Matrix Guy theme. Do give it a spin if you are intrigued !

Ok, I followed this tutorial:

lsblk -f
─nvme0n1p3
│    btrfs        fedora_golem-fdr             3fe64608-f704-4e19-b463-451c874044fc  //fedora partition
└─nvme0n1p4
btrfs                                     c016f38e-30bb-4c56-94f3-5a33e3187ac1  //apparently the Garuda installer did not name the Garuda partition, but this is it
  1. Then did these:
sudo mkdir -p /mnt/broken
sudo mount /dev/nvme0n1p4 /mnt/broken
sudo garuda-chroot /mnt/broken/@

Now I’m sorta stuck at mounting the $esp partition inside the chroot:

If the system is installed in UEFI
Find existing $esp partitions if more than one

  1. My output:
sh-5.2# parted -l | grep -iE "^Disk /|esp" | grep -B1 esp
Disk /dev/sda: 7751MB
2      2801MB  2806MB  4194kB  primary               esp
Disk /dev/nvme0n1: 2000GB
1      1049kB  630MB   629MB   fat32        EFI System Partition  boot, esp
  1. I don’t know which one to pick from this output, but my best guess was /dev/nvme0n1 so I mounted it:
sh-5.2# mount /dev/nvme0n1 /boot/efi
mount: /boot/efi: /dev/nvme0n1 already mounted or mount point busy.
dmesg(1) may have more information after failed mount system call.
  1. Guessing that it was already mounted, I proceeded to these instructions.
sudo pacman -S grub-btrfs grub os-prober-garuda

These were all already installed.
5. Then:

sh-5.2# sudo grub-install
sudo: unable to find terminal name for device 136, 1
Installing for x86_64-efi platform.
grub-install: error: cannot find EFI directory.

At which step did I take the wrong turn?

Did you try chroot from “Welcome App” in live ISO?
Or garuda-chroot -a from live ISO?

Then, if you are chroot on Garuda

grub-install 
update-grub

You can check also with

efibootmgr

for installed OS.

Garuda must be the last installed OS, fedora and other OS did not find Garuda.

Guessing, when doing system/important actions is not a wise move :man_shrugging:
Check for possible mount points on ESPs:

findmnt --real -ln | grep -w vfat

When running admin/root commands in a chroot environment, do not use sudo, as you are logged into the root user account, having root privileges.

Especially when troubleshooting, you should prefer providing required arguments to grub-install, instead of using the defaults. I mean at least the ESP directory. For example:

grub-install --efi-directory=/boot/efi

Of course, you should confirm (and possibly fix) the ESP is properly mounted, as explained above. You might need to unmount/mount the ESP (/dev/nvme0n1 ??) to the mount point (/boot/efi)

2 Likes

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