Fresh Garuda installation won’t boot except in recovery mode

As said in the title, I recently installed Garuda Cinnamon edition, and after running the initial setup and updates, the OS will no longer boot normally, getting stuck at "Loading initial ramdisk". I waited for over half an hour, and it never loaded. I have to boot through recovery mode, as that is the only way to boot the system successfully.

As per the template, there is the output of "sudo garuda-inxi":

System:
  Kernel: 6.1.2-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.2.0
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905 rw single
    rootflags=subvol=@
  Desktop: Cinnamon v: 5.6.5 tk: GTK v: 3.24.36 wm: muffin dm: LightDM
    v: 1.32.0 Distro: Garuda Linux base: Arch Linux
Machine:
  Type: Desktop System: NOVATECH product: MBB-47008 v: V1.0 serial: <filter>
    Chassis: type: 3 v: 1.0 serial: <filter>
  Mobo: Gigabyte model: H110M-S2H-CF v: x.x serial: N/A
    UEFI: American Megatrends v: F23b date: 07/06/2017
CPU:
  Info: model: Intel Core i5-7400 socket: U3E1 bits: 64 type: MCP
    arch: Kaby Lake gen: core 7 level: v3 note: check built: 2018
    process: Intel 14nm family: 6 model-id: 0x9E (158) stepping: 9
    microcode: 0xF0
  Topology: cpus: 1x cores: 4 smt: <unsupported> cache: L1: 256 KiB
    desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB L3: 6 MiB
    desc: 1x6 MiB
  Speed (MHz): avg: 3000 min/max: 800/3500 base/boost: 3300/8300 scaling:
    driver: intel_pstate governor: performance volts: 1.0 V ext-clock: 100 MHz
    cores: 1: 3000 2: 3000 3: 3000 4: 3000 bogomips: 24000
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities: <filter>
Graphics:
  Device-1: NVIDIA GA106 [GeForce RTX 3060 Lite Hash Rate]
    vendor: Micro-Star MSI driver: nvidia v: 525.60.11
    alternate: nouveau,nvidia_drm non-free: 525.xx+
    status: current (as of 2022-12) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 1 speed: 2.5 GT/s
    lanes: 16 link-max: gen: 4 speed: 16 GT/s bus-ID: 01:00.0
    chip-ID: 10de:2504 class-ID: 0300
  Display: x11 server: X.Org v: 21.1.6 driver: N/A display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 92 s-size: 530x301mm (20.87x11.85")
    s-diag: 610mm (24")
  Monitor-1: HDMI-0 res: 1920x1080 hz: 60 dpi: 92
    size: 531x299mm (20.91x11.77") diag: 609mm (23.99") modes: N/A
  API: OpenGL v: 4.6.0 NVIDIA 525.60.11 renderer: NVIDIA GeForce RTX
    3060/PCIe/SSE2 direct render: Yes
Audio:
  Device-1: Intel 100 Series/C230 Series Family HD Audio vendor: Gigabyte
    driver: snd_hda_intel v: kernel bus-ID: 00:1f.3 chip-ID: 8086:a170
    class-ID: 0403
  Device-2: NVIDIA GA106 High Definition Audio vendor: Micro-Star MSI
    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: 01:00.1 chip-ID: 10de:228e
    class-ID: 0403
  Sound API: ALSA v: k6.1.2-zen1-1-zen running: yes
  Sound Server-1: PulseAudio v: 16.1 running: no
  Sound Server-2: PipeWire v: 0.3.63 running: yes
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    vendor: Gigabyte driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s
    lanes: 1 port: d000 bus-ID: 02:00.0 chip-ID: 10ec:8168 class-ID: 0200
  IF: enp2s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Drives:
  Local Storage: total: 2.42 TiB used: 60.18 GiB (2.4%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/sda maj-min: 8:0 vendor: Samsung model: HN-M500MBB
    size: 465.76 GiB block-size: physical: 4096 B logical: 512 B speed: 3.0 Gb/s
    type: HDD rpm: 5400 serial: <filter> rev: 0001 scheme: MBR
  ID-2: /dev/sdb maj-min: 8:16 vendor: Samsung model: SSD 860 EVO 1TB
    size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    type: SSD serial: <filter> rev: 4B6Q scheme: MBR
  ID-3: /dev/sdc maj-min: 8:32 vendor: Western Digital
    model: WD1600AAJS-75M0A0 size: 149.01 GiB block-size: physical: 512 B
    logical: 512 B speed: 3.0 Gb/s type: N/A serial: <filter> rev: 3E01
    scheme: MBR
  ID-4: /dev/sdd maj-min: 8:48 type: USB vendor: Samsung
    model: Portable SSD T5 size: 931.51 GiB block-size: physical: 512 B
    logical: 512 B type: SSD serial: <filter> scheme: GPT
Partition:
  ID-1: / raw-size: 882.39 GiB size: 882.39 GiB (100.00%)
    used: 59.29 GiB (6.7%) fs: btrfs block-size: 4096 B dev: /dev/sdd2
    maj-min: 8:50
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 760 KiB (0.2%) fs: vfat block-size: 512 B dev: /dev/sdd1 maj-min: 8:49
  ID-3: /home raw-size: 882.39 GiB size: 882.39 GiB (100.00%)
    used: 59.29 GiB (6.7%) fs: btrfs block-size: 4096 B dev: /dev/sdd2
    maj-min: 8:50
  ID-4: /var/log raw-size: 882.39 GiB size: 882.39 GiB (100.00%)
    used: 59.29 GiB (6.7%) fs: btrfs block-size: 4096 B dev: /dev/sdd2
    maj-min: 8:50
  ID-5: /var/tmp raw-size: 882.39 GiB size: 882.39 GiB (100.00%)
    used: 59.29 GiB (6.7%) fs: btrfs block-size: 4096 B dev: /dev/sdd2
    maj-min: 8:50
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
  ID-1: swap-1 type: zram size: 7.72 GiB used: 0 KiB (0.0%) priority: 100
    dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 36.0 C mobo: N/A gpu: nvidia temp: 41 C
  Fan Speeds (RPM): N/A gpu: nvidia fan: 0%
Info:
  Processes: 245 Uptime: 19m wakeups: 0 Memory: 7.72 GiB
  used: 2.84 GiB (36.8%) Init: systemd v: 252 default: graphical
  tool: systemctl Compilers: gcc: 12.2.0 Packages: pm: pacman pkgs: 1437
  libs: 442 tools: paru,yay Shell: garuda-inxi (sudo) default: Bash v: 5.1.16
  running-in: gnome-terminal inxi: 3.3.24
Garuda (2.6.14-1):
  System install date:     2023-01-04
  Last full system update: 2023-01-04
  Is partially upgraded:   No
  Relevant software:       snapper NetworkManager mkinitcpio nvidia-dkms
  Windows dual boot:       No/Undetected
  Failed units:            


I am new to this distro, and linux in general, so any and all help is appreciated.

The issue was closed and I kind of thought this was behind us, but looking at the issue here it looks like this is still affecting some folks (see the last few comments): Linux 5.18 NVIDIA module won't load: ` Missing ENDBR: _portMemAllocatorAllocNonPagedWrapper+0x0/0x10` · Issue #256 · NVIDIA/open-gpu-kernel-modules · GitHub

If this is your issue, the workaround is to add ibt=off to your kernel parameters. Try pressing E on the Grub menu to add it in before you boot, so you don't have to go to the bother of setting up a chroot in a live system.

1 Like

If this is your issue, the workaround is to add ibt=off to your kernel parameters. Try pressing E on the Grub menu to add it in before you boot, so you don’t have to go to the bother of setting up a chroot in a live system.

it appears that ibt is off for the default grub entry.

see grub.cfg below:

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_gpt
insmod btrfs
set root='hd3,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd3,gpt2 --hint-efi=hd3,gpt2 --hint-baremetal=ahci3,gpt2  0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
else
  search --no-floppy --fs-uuid --set=root 0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
fi
    font="/@/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
fi
terminal_input console
terminal_output gfxterm
insmod part_gpt
insmod btrfs
set root='hd3,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd3,gpt2 --hint-efi=hd3,gpt2 --hint-baremetal=ahci3,gpt2  0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
else
  search --no-floppy --fs-uuid --set=root 0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
fi
insmod gfxmenu
loadfont ($root)/@/usr/share/grub/themes/garuda/dejavu_sans_12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/dejavu_sans_14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/dejavu_sans_16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/dejavu_sans_24.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/dejavu_sans_48.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/dejavu_sans_bold_16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/dejavu_sans_mono_12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/terminus-12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/terminus-14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/terminus-16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/terminus-18.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/terminus-b12.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/terminus-b14.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/terminus-b16.pf2
loadfont ($root)/@/usr/share/grub/themes/garuda/terminus-b18.pf2
insmod png
set theme=($root)/@/usr/share/grub/themes/garuda/theme.txt
export theme
if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=5
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Garuda Linux' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_gpt
	insmod btrfs
	set root='hd3,gpt2'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd3,gpt2 --hint-efi=hd3,gpt2 --hint-baremetal=ahci3,gpt2  0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
	else
	  search --no-floppy --fs-uuid --set=root 0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
	fi
	echo	'Loading Linux linux-zen ...'
	linux	/@/boot/vmlinuz-linux-zen root=UUID=0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905 rw rootflags=subvol=@  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3 ibt=off
	echo	'Loading initial ramdisk ...'
	initrd	/@/boot/intel-ucode.img /@/boot/initramfs-linux-zen.img
}
submenu 'Advanced options for Garuda Linux' $menuentry_id_option 'gnulinux-advanced-0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905' {
	menuentry 'Garuda Linux, with Linux linux-zen' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-advanced-0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod btrfs
		set root='hd3,gpt2'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd3,gpt2 --hint-efi=hd3,gpt2 --hint-baremetal=ahci3,gpt2  0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
		else
		  search --no-floppy --fs-uuid --set=root 0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
		fi
		echo	'Loading Linux linux-zen ...'
		linux	/@/boot/vmlinuz-linux-zen root=UUID=0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905 rw rootflags=subvol=@  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3 ibt=off
		echo	'Loading initial ramdisk ...'
		initrd	/@/boot/intel-ucode.img /@/boot/initramfs-linux-zen.img
	}
	menuentry 'Garuda Linux, with Linux linux-zen (fallback initramfs)' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-fallback-0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod btrfs
		set root='hd3,gpt2'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd3,gpt2 --hint-efi=hd3,gpt2 --hint-baremetal=ahci3,gpt2  0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
		else
		  search --no-floppy --fs-uuid --set=root 0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
		fi
		echo	'Loading Linux linux-zen ...'
		linux	/@/boot/vmlinuz-linux-zen root=UUID=0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905 rw rootflags=subvol=@  quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3 ibt=off
		echo	'Loading initial ramdisk ...'
		initrd	/@/boot/intel-ucode.img /@/boot/initramfs-linux-zen-fallback.img
	}
	menuentry 'Garuda Linux, with Linux linux-zen (recovery mode)' --class garuda --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-zen-recovery-0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod btrfs
		set root='hd3,gpt2'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd3,gpt2 --hint-efi=hd3,gpt2 --hint-baremetal=ahci3,gpt2  0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
		else
		  search --no-floppy --fs-uuid --set=root 0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
		fi
		echo	'Loading Linux linux-zen ...'
		linux	/@/boot/vmlinuz-linux-zen root=UUID=0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905 rw single rootflags=subvol=@ 
		echo	'Loading initial ramdisk ...'
		initrd	/@/boot/intel-ucode.img /@/boot/initramfs-linux-zen-fallback.img
	}
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
	fwsetup --is-supported
	if [ "$?" = 0 ]; then
		menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
			fwsetup
		}
	fi
fi
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/35_fwupd ###
### END /etc/grub.d/35_fwupd ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###

### BEGIN /etc/grub.d/41_snapshots-btrfs ###
submenu 'Garuda Linux snapshots' {
    configfile "${prefix}/grub-btrfs.cfg"
}
### BEGIN /etc/grub.d/41_snapshots-btrfs ###
### BEGIN /etc/grub.d/41_snapshots-btrfs ###
### END /etc/grub.d/41_snapshots-btrfs ###
### END /etc/grub.d/41_snapshots-btrfs ###
### END /etc/grub.d/41_snapshots-btrfs ###

### BEGIN /etc/grub.d/60_memtest86+ ###
if [ "${grub_platform}" == "pc" ]; then
    menuentry "Memory Tester (memtest86+)" --class memtest86 --class gnu --class tool {
        search --fs-uuid --no-floppy --set=root --hint-bios=hd3,gpt2 --hint-efi=hd3,gpt2 --hint-baremetal=ahci3,gpt2  0ae1ac23-e5d0-4674-b4a5-ca3dfbbcc905
        linux16 /@/boot/memtest86+/memtest.bin 
    }
fi
### END /etc/grub.d/60_memtest86+ ###

### BEGIN /etc/grub.d/61_custom_leave_options ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Shutdown" --class shutdown {
	echo "System shutting down..."
	halt
}

menuentry "Restart" --class restart {
	echo "System rebooting..."
	reboot
}

#if [ ${grub_platform} == "efi" ]; then
#	menuentry "Firmware Setup (UEFI)" --class recovery {
#		fwsetup
#	}
#fi
### END /etc/grub.d/61_custom_leave_options ###


so i don’t think that this is the issue

Gotcha, you are right. I had noticed it was not listed in the parameters in yourinxi, but now that I look at it that is because you are posting the inxi from the recovery mode.

Can you try installing a different kernel, to test if it is a kernel-related issue?

sudo pacman -S linux-lts linux-lts-headers

Then boot to the LTS kernel from the advanced options in the Grub menu.

2 Likes

after installing the lts kernel, and trying to boot it and the zen kernel in every way in the advanced menu, here are the results:

linux-zen (normal) : gets stuck at "loading initial ramdisk"
linux-zen (fallback initramfs) : gets past the initramfs load, but gets stuck at "running early hook [plymouth]"
linux-zen (recovery-mode) : boots successfully

linux-lts (normal) : gets stuck at "loading initial ramdisk"
linux-lts (fallback initramfs) : gets past the initramfs load, but gets stuck at "running early hook [plymouth]"
linux-lts (recovery-mode) : boots successfully

as seen above, there is no appreciable difference (as far as i can tell) between the zen and lts kernels.

Try to remove the quiet quiet splash parameters from your kernel parameters line and see if you can get through the boot without Plymouth.

1 Like

Try to remove the quiet quiet splash parameters from your kernel parameters line and see if you can get through the boot without Plymouth.

removing splash specifically fixed the issue (just disabling quiet mode didn’t help).

now all of the zen kernels are booting normally.
thank you for the help, and if there is anything else i can do, please let me know. what is “splash” anyway?

again, thanks for all the help!

Glad to hear it, @Alenox.

The splash screen is the little animated graphic that is displayed in between Grub and the login screen. That kernel parameter is needed for it to be displayed. It is always paired with the quiet kernel parameter, which hides all the messages that scroll by on the TTY during the boot process.

You probably just need to wait for an update to Plymouth to come down, then you could put splash back and enjoy the splash screen again. :slightly_smiling_face:

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