Kernel files corrupt after update or a problem with GRUB?

Hello together, I hope you have happy holidays,

well, no surprise, but I have a problem with booting my dedicated Garuda gaming Linux PC, which was working fine for many months.

So I made yesterday at the end of my session all the updates via bauh and today when I wanted to start the PC again I saw this minimalistic GRUB menu with only 3 options to boot, none of it working.
No Snapper entry - the awesome tool which saved my but already before.

I only get errors, like these, when trying to boot one of the remaning kernels: “Error loading \EFI\Linux\Linux-6.5[…].efi: Unsupported”

What have I tried so far to fix it myself (in the hope to not make it worse)?

Boot the live disc of Garuda and…

  • …try to fix GRUB with the help of the Garuda Boot Repair tool (repair config). [Log added below]
  • …try to restore a snapshot with Snapper-Tools.
  • …fiddle around with the snapper console program…
Log of Garuda Repair attempt
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/garuda-dr460nized/theme.txt
Found linux image: /boot/vmlinuz-linux-zen
Found initrd image: /boot/amd-ucode.img /boot/initramfs-linux-zen.img
Found fallback initrd image(s) in /boot:  amd-ucode.img initramfs-linux-zen-fallback.img
Found linux image: /boot/vmlinuz-linux-tkg-tt
Found initrd image: /boot/amd-ucode.img /boot/initramfs-linux-tkg-tt.img
Found fallback initrd image(s) in /boot:  amd-ucode.img initramfs-linux-tkg-tt-fallback.img
Found linux image: /boot/vmlinuz-linux-tkg-bmq
Found initrd image: /boot/amd-ucode.img /boot/initramfs-linux-tkg-bmq.img
Found fallback initrd image(s) in /boot:  amd-ucode.img initramfs-linux-tkg-bmq-fallback.img
Found linux image: /boot/vmlinuz-linux-lts
Found initrd image: /boot/amd-ucode.img /boot/initramfs-linux-lts.img
Found fallback initrd image(s) in /boot:  amd-ucode.img initramfs-linux-lts-fallback.img
Found linux image: /boot/vmlinuz-linux-cachyos-bore
Found initrd image: /boot/amd-ucode.img /boot/initramfs-linux-cachyos-bore.img
Found fallback initrd image(s) in /boot:  amd-ucode.img initramfs-linux-cachyos-bore-fallback.img
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.
grub-probe: error: cannot find a GRUB drive for /dev/sdc2.  Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sdc2.  Check your device.map.
Found Garuda Linux on /dev/nvme0n1p2
Adding boot menu entry for UEFI Firmware Settings ...
Detecting snapshots ...
Found snapshot: 2023-12-25 15:04:57 | @_backup_20232512205847742 | N/A    | N/A                                                                      |
Found snapshot: 2023-12-25 14:59:29 | @_backup_20232512140457689 | N/A    | N/A                                                                      |
Found snapshot: 2023-12-24 23:00:00 | @/.snapshots/1087/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-24 22:49:13 | @/.snapshots/1086/snapshot | post   | pixelflasher-bin                                                         |
Found snapshot: 2023-12-24 22:49:11 | @/.snapshots/1085/snapshot | pre    | pacman -U /tmp/bauh@dennis/arch/build_1703454532/pixelflasher-bin/pixelf |
Found snapshot: 2023-12-24 22:48:49 | @/.snapshots/1084/snapshot | post   | archlinux-keyring bauh blender bottles brave-bin c-ares cdparanoia eleme |
Found snapshot: 2023-12-24 22:46:01 | @/.snapshots/1083/snapshot | pre    | pacman -S archlinux-keyring bauh blender bottles brave-bin c-ares cdpara |
Found snapshot: 2023-12-24 22:00:00 | @/.snapshots/1082/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-24 21:00:00 | @/.snapshots/1081/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-24 20:00:00 | @/.snapshots/1080/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-22 01:32:57 | @/.snapshots/1079/snapshot | post   | betterbird-bin                                                           |
Found snapshot: 2023-12-22 01:32:55 | @/.snapshots/1078/snapshot | pre    | pacman -U /tmp/bauh@dennis/arch/build_1703205144/betterbird-bin/betterbi |
Found snapshot: 2023-12-22 01:32:20 | @/.snapshots/1077/snapshot | post   | ca-certificates-mozilla corectrl dbeaver dbeaver-plugin-apache-poi dbeav |
Found snapshot: 2023-12-22 01:29:36 | @/.snapshots/1076/snapshot | pre    | pacman -S ca-certificates-mozilla corectrl dbeaver dbeaver-plugin-apache |
Found snapshot: 2023-12-22 01:00:00 | @/.snapshots/1075/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-21 02:00:00 | @/.snapshots/1074/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-21 01:00:00 | @/.snapshots/1073/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-20 22:15:26 | @/.snapshots/1072/snapshot | post   | bind bluez bluez-cups bluez-hid2hci bluez-libs bluez-plugins bluez-utils |
Found snapshot: 2023-12-20 22:13:49 | @/.snapshots/1071/snapshot | pre    | /usr/bin/pamac-daemon                                                    |
Found snapshot: 2023-12-20 22:00:00 | @/.snapshots/1070/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-20 21:00:00 | @/.snapshots/1069/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-20 18:00:00 | @/.snapshots/1068/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-20 17:00:00 | @/.snapshots/1067/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-20 14:05:23 | @/.snapshots/1065/snapshot | post   | gst-libav gst-plugins-bad gst-plugins-bad-libs gst-plugins-base gst-plug |
Found snapshot: 2023-12-20 14:02:12 | @/.snapshots/1064/snapshot | pre    | pacman -S gst-libav gst-plugins-bad gst-plugins-bad-libs gst-plugins-bas |
Found snapshot: 2023-12-20 00:39:33 | @/.snapshots/1061/snapshot | post   | rarcrack                                                                 |
Found snapshot: 2023-12-20 00:39:31 | @/.snapshots/1060/snapshot | pre    | /usr/bin/pamac-daemon                                                    |
Found snapshot: 2023-12-20 00:39:23 | @/.snapshots/1059/snapshot | post   | garuda-settings-manager lib32-mesa-tkg-git libraw lutris-git mesa-tkg-gi |
Found snapshot: 2023-12-20 00:37:48 | @/.snapshots/1058/snapshot | pre    | /usr/bin/pamac-daemon                                                    |
Found snapshot: 2023-12-20 00:00:00 | @/.snapshots/1057/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-19 20:35:07 | @/.snapshots/1053/snapshot | post   | burpsuite discord electron25 fastfetch garuda-fish-config inkscape java- |
Found snapshot: 2023-12-19 20:32:16 | @/.snapshots/1052/snapshot | pre    | pacman -S java-openjdk-ea-bin burpsuite discord electron25 fastfetch gar |
Found snapshot: 2023-12-19 00:00:00 | @/.snapshots/1050/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-18 00:40:39 | @/.snapshots/1042/snapshot | post   | appstream appstream-qt5 bluez bluez-cups bluez-hid2hci bluez-libs bluez- |
Found snapshot: 2023-12-18 00:38:20 | @/.snapshots/1041/snapshot | pre    | pacman -S appstream appstream-qt5 bluez bluez-cups bluez-hid2hci bluez-l |
Found snapshot: 2023-12-18 00:00:00 | @/.snapshots/1040/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-17 00:00:00 | @/.snapshots/1032/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-16 21:47:36 | @/.snapshots/1029/snapshot | post   | pamac-all                                                                |
Found snapshot: 2023-12-16 21:47:34 | @/.snapshots/1028/snapshot | pre    | pacman -U /tmp/bauh@dennis/arch/build_1702759634/pamac-all/pamac-all-11. |
Found snapshot: 2023-12-16 21:47:01 | @/.snapshots/1027/snapshot | post   | attica5 baloo5 bluez-qt5 breeze-icons btrfs-progs cachyos-ananicy-rules- |
Found snapshot: 2023-12-16 21:43:43 | @/.snapshots/1026/snapshot | pre    | pacman -S attica5 baloo5 bluez-qt5 breeze-icons btrfs-progs cachyos-anan |
Found snapshot: 2023-12-16 00:00:00 | @/.snapshots/1023/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-15 19:00:00 | @/.snapshots/1018/snapshot | single | timeline                                                                 |
Found snapshot: 2023-12-14 23:11:41 | @/.snapshots/1017/snapshot | post   | pixelflasher-bin                                                         |
Found snapshot: 2023-12-14 23:11:39 | @/.snapshots/1016/snapshot | pre    | pacman -U /tmp/bauh@dennis/arch/build_1702591879/pixelflasher-bin/pixelf |
Found snapshot: 2023-12-14 23:11:18 | @/.snapshots/1015/snapshot | post   | betterbird-bin                                                           |
Found snapshot: 2023-12-14 23:11:16 | @/.snapshots/1014/snapshot | pre    | pacman -U /tmp/bauh@dennis/arch/build_1702591841/betterbird-bin/betterbi |
Found snapshot: 2023-12-14 23:10:41 | @/.snapshots/1013/snapshot | post   | pamac-all                                                                |
Found snapshot: 2023-12-14 23:10:39 | @/.snapshots/1012/snapshot | pre    | pacman -U /tmp/bauh@dennis/arch/build_1702591817/pamac-all/pamac-all-11. |
Found snapshot: 2023-12-14 23:10:17 | @/.snapshots/1011/snapshot | post   | python-async-tkinter-loop                                                |
Generated 500 total GRUB entries. You might experience issues loading snapshots menu in GRUB.
Found 50 snapshot(s)
Unmount /tmp/grub-btrfs.Y3sivXpeNT .. Success
Found memtest86+ image: /boot/memtest86+/memtest.bin
/usr/bin/grub-probe: warning: unknown device type nvme0n1.
Found memtest86+ EFI image: /boot/memtest86+/memtest.efi
/usr/bin/grub-probe: warning: unknown device type nvme0n1.
done

No success so far. At least I did not make it worse I think…

System info (output from the live OS)

System:
  Kernel: 6.2.13-zen-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.2.1
    parameters: BOOT_IMAGE=/boot/vmlinuz-x86_64 lang=en_US keytable=de tz=UTC misobasedir=garuda
    root=miso:LABEL=GARUDA_DR460NIZED_RAPTOR quiet systemd.show_status=1 ibt=off driver=nonfree
    nouveau.modeset=0 i915.modeset=1 radeon.modeset=1
  Desktop: KDE Plasma v: 5.27.4 tk: Qt v: 5.15.9 wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux
    base: Arch Linux
Machine:
  Type: Desktop Mobo: Micro-Star model: X470 GAMING PRO CARBON (MS-7B78) v: 1.0
    serial: <superuser required> UEFI: American Megatrends LLC. v: 2.J1 date: 05/04/2023
CPU:
  Info: model: AMD Ryzen 7 2700X bits: 64 type: MT MCP arch: Zen+ gen: 2 level: v3 note: check
    built: 2018-21 process: GF 12nm family: 0x17 (23) model-id: 8 stepping: 2 microcode: 0x800820D
  Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache: L1: 768 KiB
    desc: d-8x32 KiB; i-8x64 KiB L2: 4 MiB desc: 8x512 KiB L3: 16 MiB desc: 2x8 MiB
  Speed (MHz): avg: 2472 high: 4150 min/max: 2200/4150 boost: enabled scaling:
    driver: acpi-cpufreq governor: schedutil cores: 1: 3127 2: 2200 3: 2200 4: 2200 5: 2200 6: 4150
    7: 2200 8: 2200 9: 2200 10: 2200 11: 2040 12: 2200 13: 2200 14: 4150 15: 2200 16: 1885
    bogomips: 132802
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
  Vulnerabilities: <filter>
Graphics:
  Device-1: AMD Navi 22 [Radeon RX 6700/6700 XT/6750 XT / 6800M/6850M XT] vendor: Sapphire
    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: DP-3 empty: DP-1,DP-2,HDMI-A-1 bus-ID: 28:00.0
    chip-ID: 1002:73df class-ID: 0300
  Display: x11 server: X.Org v: 21.1.8 with: Xwayland v: 23.1.1 compositor: kwin_x11 driver: X:
    loaded: amdgpu unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi gpu: amdgpu
    display-ID: :0 screens: 1
  Screen-1: 0 s-res: 2560x1440 s-dpi: 96 s-size: 677x381mm (26.65x15.00") s-diag: 777mm (30.58")
  Monitor-1: DP-3 mapped: DisplayPort-2 model: HP OMEN 27q serial: <filter> built: 2023
    res: 2560x1440 hz: 60 dpi: 109 gamma: 1.2 size: 597x336mm (23.5x13.23") diag: 685mm (27")
    ratio: 16:9 modes: max: 2560x1440 min: 720x400
  API: OpenGL v: 4.6 Mesa 23.0.3 renderer: AMD Radeon RX 6700 XT (navi22 LLVM 15.0.7 DRM 3.49
    6.2.13-zen-1-zen) direct-render: Yes
Audio:
  Device-1: Creative Labs EMU20k2 [Sound Blaster X-Fi Titanium Series] driver: snd_ctxfi v: kernel
    pcie: gen: 1 speed: 2.5 GT/s lanes: 1 bus-ID: 24:00.0 chip-ID: 1102:000b class-ID: 0403
  Device-2: AMD Navi 21/23 HDMI/DP Audio driver: snd_hda_intel v: kernel pcie: gen: 4
    speed: 16 GT/s lanes: 16 bus-ID: 28:00.1 chip-ID: 1002:ab28 class-ID: 0403
  API: ALSA v: k6.2.13-zen-1-zen status: kernel-api tools: N/A
  Server-1: PipeWire v: 0.3.70 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 I211 Gigabit Network vendor: Micro-Star MSI driver: igb v: kernel pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 port: f000 bus-ID: 22:00.0 chip-ID: 8086:1539 class-ID: 0200
  IF: enp34s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Drives:
  Local Storage: total: 6.37 TiB used: 0 KiB (0.0%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 980 PRO 2TB size: 1.82 TiB
    block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s lanes: 4 type: SSD serial: <filter>
    rev: 5B2QGXA7 temp: 29.9 C scheme: GPT
  ID-2: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 860 EVO 500GB size: 465.76 GiB
    block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s type: SSD serial: <filter> rev: 1B6Q
    scheme: MBR
  ID-3: /dev/sdb maj-min: 8:16 vendor: HGST (Hitachi) model: HDN724040ALE640 size: 3.64 TiB
    block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s type: HDD rpm: 7200 serial: <filter>
    rev: A5E0 scheme: GPT
  ID-4
: /dev/sdc maj-min: 8:32 type: USB vendor: Realtek model: RTL9210 NVME size: 465.76 GiB
    block-size: physical: 512 B logical: 512 B type: SSD serial: <filter> rev: 1.00 scheme: MBR
Partition:
  Message: No partition data found.
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
  ID-1: swap-1 type: zram size: 31.27 GiB used: 0 KiB (0.0%) priority: 100 dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 40.6 C mobo: N/A gpu: amdgpu temp: 33.0 C mem: 30.0 C
  Fan Speeds (RPM): N/A gpu: amdgpu fan: 0
Info:
  Processes: 304 Uptime: 8m wakeups: 0 Memory: 31.27 GiB used: 2.34 GiB (7.5%) Init: systemd v: 253
  default: graphical tool: systemctl Compilers: gcc: 12.2.1 Packages: pm: pacman pkgs: 1200
  libs: 327 tools: octopi,paru Client: shell wrapper v: 5.1.16-release inxi: 3.3.26
Garuda (2.6.16-1):
  System install date:     2023-12-25
  Last full system update: 2023-12-25 ↻
  Is partially upgraded:   No
  Relevant software:       snapper NetworkManager dracut
  Windows dual boot:       <superuser required>
  Failed units:

Greetings, Dennis

BTW.: This is not my first account. I discovered today that I lost access to my account (secured with 2FA) for a reason I can not comprehend, since I use KeepassXC and KeepassDX always when I create new accounts for many years, but there is no entry for this account in my DB.
But it’s also quite possible that I’m missing something, because I caught a flu virus 5 days ago and I’m not out of the woods yet. As a result, I’m still a bit paralyzed at the moment, especially in my head. :face_with_spiral_eyes:
OK, before I bore you any more, I’d better start looking for potential solutions that I can realize and test as safely as possible. Thank you for reading. :v:

This is a good thought, but instead of using the Boot Repair tool try setting up a chroot, then reinstall Grub and regenerate the Grub configuration file like this: How to chroot Garuda Linux

You can probably use the chroot tool in Garuda Welcome to set the chroot if you’d like, just double-check it mounts the EFI partition in addition the root partition. If the chroot tool works you can skip down to this step:

  • If the system is installed in UEFI
    Find existing $esp partitions if more than one
parted -l | grep -iE "^Disk /|esp" | grep -B1 esp
Disk /dev/nvme0n1: 256GB
 1  1049kB  274MB   273MB   fat32   EFI system partition  boot, esp
 4  87,4GB  87,9GB  537MB   fat32   EFI system partition  boot, esp

In this example (my PC) there is /dev/nvme0n1p1, used for Windows and /dev/nvme0n1p4 used for my Linux system.
Select the proper $esp partition (you may check your /etc/fstab if you are not sure) and mount it inside chroot

mount /dev/nvme0n1p4 /boot/efi

Then install grub bootloader and update grub

grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=garuda --recheck
update-grub

Do not forget to exit chroot normally, before you close the terminal

Exit the chroot session with

exit

If you are not familiar with what this should look like, log in to the forum from the live environment and paste the terminal input and output into the thread as you go.

4 Likes

Holy moly, this was easy thanks to your great instructions!
Thanks a lot!

So it was a problem with GRUB and yes, I was able to simply use the chroot tool in Garuda welcome. It already mounted the right directories.

1 Like

No problem Dennis, glad to hear it. I hope you feel better soon, and good luck sorting out the 2FA thing (maybe you used something other than KeepassXC back when you set it up?).

2 Likes

Thank you. I will. :slight_smile:

It probably has to do with my poor management of my Keepass DB’s. I will improve this in the near future and use only one DB for all devices and sync them automatically with Syncthing.

Check this one from our start.garudalinux.org

https://bitwarden.garudalinux.org/

I have KeepassXC use many years but never since I changed to vaultwarden (bitwarden add-on in browser).

1 Like

Looks good, but I’m far too paranoid to host my passwords online, albeit encrypted.
I still prefer the offline DB approach of KeePass and I will use Syncthing only on my local network.
Thanks for the suggestion though.

Self hosted on Garuda Server/Own Server and there is a desktop app you can export encrypted files between your hardware, plus it generate the 2FA key.

But … its your choice :slight_smile:

2 Likes

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