After every kernelupdate: new non-working default boot option

Hello,

After a kernel update or new kernel installation Manjaro fails to boot on my laptop (blank black screen after GRUB and keyboard shortcuts not working). Hard reset required, and I then need to chose another boot option i GRUB. After booting into Manjaro I can delete /boot/vmlinuz-linux510 and/or /boot/vmlinuz-linux513 and update GRUB to get a working default boot option. After a new update the files are created once again…

So I suspect there is a hook somewhere that creates these wrong GRUB entries (vmlinuz-linux5xx) besides the Manjaro working ones like vmlinuz-5.10-x86_64. The files in /boot are identical (sha256sum) and so are the GRUB entries except the last line:

vmlinuz-linux513:
initrd /boot/intel-ucode.img

vmlinuz-5.13-x86_64
initrd /boot/intel-ucode.img /boot/initramfs-5.13-x86_64.img

So, how can I stop bad GRUB entries being generated after an update?

Sincerely

Hello, did you run sudo update-grub?

Yes, after I’ve manually removed the /boot/vmlinuz-linux5xx but not after an update in pacman.

Those files should not even be present. Check your alpm-hooks, there seems to be a hook creating those:

$ ls -l /etc/pacman.d/hooks/
$ pacman -Qo /usr/share/libalpm/hooks/*
sudo ls -l /etc/pacman.d/hooks/
ls: cannot access '/etc/pacman.d/hooks/': No such file or directory
sudo pacman -Qo /usr/share/libalpm/hooks/*
/usr/share/libalpm/hooks/20-systemd-sysusers.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/30-systemd-binfmt.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/30-systemd-catalog.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/30-systemd-daemon-reload.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/30-systemd-hwdb.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/30-systemd-sysctl.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/30-systemd-tmpfiles.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/30-systemd-udev-reload.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/30-systemd-update.hook is owned by systemd 248.3-3
/usr/share/libalpm/hooks/40-fontconfig-config.hook is owned by fontconfig 2:2.13.94-1
/usr/share/libalpm/hooks/40-update-ca-trust.hook is owned by ca-certificates-utils 20210603-1
/usr/share/libalpm/hooks/60-booster-remove.hook is owned by booster 0.5-1
/usr/share/libalpm/hooks/60-depmod.hook is owned by kmod 29-1
/usr/share/libalpm/hooks/60-mkinitcpio-remove.hook is owned by mkinitcpio 30-2
/usr/share/libalpm/hooks/70-dkms-install.hook is owned by dkms 2.8.4-1
/usr/share/libalpm/hooks/70-dkms-upgrade.hook is owned by dkms 2.8.4-1
/usr/share/libalpm/hooks/71-dkms-remove.hook is owned by dkms 2.8.4-1
/usr/share/libalpm/hooks/80-atd.hook is owned by at 3.2.2-1
/usr/share/libalpm/hooks/80-cronie.hook is owned by cronie 1.5.7-2
/usr/share/libalpm/hooks/90-booster-install.hook is owned by booster 0.5-1
/usr/share/libalpm/hooks/90-mkinitcpio-install.hook is owned by mkinitcpio 30-2
/usr/share/libalpm/hooks/99-grub.hook is owned by grub 2.06-1
/usr/share/libalpm/hooks/dbus-reload.hook is owned by dbus 1.12.20-1
/usr/share/libalpm/hooks/dconf-update.hook is owned by dconf 0.40.0-1
/usr/share/libalpm/hooks/detect-old-perl-modules.hook is owned by perl 5.34.0-1
/usr/share/libalpm/hooks/firefox-dev-post.hook is owned by manjaro-browser-settings 20201114-1
/usr/share/libalpm/hooks/firefox-dev-pre.hook is owned by manjaro-browser-settings 20201114-1
/usr/share/libalpm/hooks/firefox-kde-post.hook is owned by manjaro-browser-settings 20201114-1
/usr/share/libalpm/hooks/firefox-kde-pre.hook is owned by manjaro-browser-settings 20201114-1
/usr/share/libalpm/hooks/firefox-post.hook is owned by manjaro-browser-settings 20201114-1
/usr/share/libalpm/hooks/firefox-pre.hook is owned by manjaro-browser-settings 20201114-1
/usr/share/libalpm/hooks/fontconfig-32.hook is owned by lib32-fontconfig 2:2.13.94-1
/usr/share/libalpm/hooks/fontconfig.hook is owned by fontconfig 2:2.13.94-1
/usr/share/libalpm/hooks/gdk-pixbuf-query-loaders-32.hook is owned by lib32-gdk-pixbuf2 2.42.6-1
/usr/share/libalpm/hooks/gdk-pixbuf-query-loaders.hook is owned by gdk-pixbuf2 2.42.6-1
/usr/share/libalpm/hooks/ghc-register.hook is owned by ghc-libs 8.10.5-1
/usr/share/libalpm/hooks/ghc-unregister.hook is owned by ghc-libs 8.10.5-1
/usr/share/libalpm/hooks/gio-querymodules-32.hook is owned by lib32-glib2 2.68.3-1
/usr/share/libalpm/hooks/gio-querymodules.hook is owned by glib2 2.68.3-1
/usr/share/libalpm/hooks/glib-compile-schemas.hook is owned by glib2 2.68.3-1
/usr/share/libalpm/hooks/gtk-query-immodules-2.0.hook is owned by gtk2 2.24.33-2
/usr/share/libalpm/hooks/gtk-query-immodules-3.0.hook is owned by gtk3 1:3.24.30-1
/usr/share/libalpm/hooks/gtk-update-icon-cache.hook is owned by gtk-update-icon-cache 1:4.2.1-2
/usr/share/libalpm/hooks/gvfsd.hook is owned by gvfs 1.48.1-1
/usr/share/libalpm/hooks/kernel-alive-install.hook is owned by kernel-alive 0.5-1
/usr/share/libalpm/hooks/kernel-alive-post.hook is owned by kernel-alive 0.5-1
/usr/share/libalpm/hooks/kernel-alive-pre.hook is owned by kernel-alive 0.5-1
/usr/share/libalpm/hooks/kernel-alive-remove.hook is owned by kernel-alive 0.5-1
/usr/share/libalpm/hooks/manjaro-aur-support.hook is owned by manjaro-aur-support 0.6-3
/usr/share/libalpm/hooks/manjaro-printer.hook is owned by manjaro-printer 20200215-2
/usr/share/libalpm/hooks/networkmanager-connectivity.hook is owned by manjaro-system 20210612-1
/usr/share/libalpm/hooks/pacman-mirrors-install.hook is owned by pacman-mirrors 4.21.3-2
/usr/share/libalpm/hooks/pacman-mirrors-upgrade.hook is owned by pacman-mirrors 4.21.3-2
/usr/share/libalpm/hooks/texinfo-install.hook is owned by texinfo 6.8-1
/usr/share/libalpm/hooks/texinfo-remove.hook is owned by texinfo 6.8-1
/usr/share/libalpm/hooks/thunderbird-post.hook is owned by manjaro-browser-settings 20201114-1
/usr/share/libalpm/hooks/thunderbird-pre.hook is owned by manjaro-browser-settings 20201114-1
/usr/share/libalpm/hooks/update-desktop-database.hook is owned by desktop-file-utils 0.26-1
/usr/share/libalpm/hooks/update-mime-database.hook is owned by shared-mime-info 2.0+57+gc1d1c70-1
/usr/share/libalpm/hooks/update-vlc-plugin-cache.hook is owned by vlc 3.0.16-2

I don’t see anything suspicious.

Do these extra kernels (files) copied to /boot when you install a kernel (again)?
Please post complete output of

$ ls -l /boot
$ sudo pacman -Syu linux513
$ ls -l /boot

Remember to check /boot before and after and cleanup properly before shutting down or restarting your machine:

$ sudo rm /boot/vmlinuz-linux513
$ sudo update-grub

Nothing new, the vmlinuz-linux513 is recreated:

$ ls -l /boot
total 221368
drwxr-xr-x 3 root root     4096 Jan  1  1970 efi
drwxr-xr-x 6 root root     4096 Jul 15 07:08 grub
-rw-r--r-- 1 root root 31998962 Jul 13 21:57 initramfs-5.10-x86_64-fallback.img
-rw-r--r-- 1 root root 12885209 Jul 13 21:57 initramfs-5.10-x86_64.img
-rw-r--r-- 1 root root 35952221 Jul 13 22:10 initramfs-5.13-x86_64-fallback.img
-rw-r--r-- 1 root root 13317743 Jul 13 22:10 initramfs-5.13-x86_64.img
-rw-r--r-- 1 root root 33976036 Oct  8  2020 initramfs-5.7-x86_64-fallback.img
-rw-r--r-- 1 root root 13812955 Oct  8  2020 initramfs-5.7-x86_64.img
-rw-r--r-- 1 root root 33461136 Nov 18  2020 initramfs-5.8-x86_64-fallback.img
-rw-r--r-- 1 root root 13887145 Nov 18  2020 initramfs-5.8-x86_64.img
-rw-r--r-- 1 root root  4769792 Jun  8 20:31 intel-ucode.img
-rw-r--r-- 1 root root       22 Jul 11 14:58 linux510-x86_64.kver
-rw-r--r-- 1 root root       21 Jul 10 22:14 linux513-x86_64.kver
drwxr-xr-x 2 root root     4096 Jul 13 21:57 memtest86+
-rw-r--r-- 1 root root  9412768 Jul 13 21:57 vmlinuz-5.10-x86_64
-rw-r--r-- 1 root root  9668160 Jul 13 22:10 vmlinuz-5.13-x86_64
-rw-r--r-- 1 root root  6681472 Sep 13  2020 vmlinuz-5.7-x86_64
-rw-r--r-- 1 root root  6804736 Nov  5  2020 vmlinuz-5.8-x86_64
$ sudo pacman -Syu linux513 
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
warning: linux513-5.13.1-3 is up to date -- reinstalling
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...

Packages (1) linux513-5.13.1-3

Total Installed Size:  101,02 MiB
Net Upgrade Size:        0,00 MiB

:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
(1/1) loading package files                        [######################] 100%
(1/1) checking for file conflicts                  [######################] 100%
(1/1) checking available disk space                [######################] 100%
:: Running pre-transaction hooks...
(1/2) Remove upgraded DKMS modules
(2/2) Save Linux kernel modules
:: Processing package changes...
(1/1) reinstalling linux513                        [######################] 100%
:: Running post-transaction hooks...
(1/7) Arming ConditionNeedsUpdate...
(2/7) Updating module dependencies...
(3/7) Install DKMS modules
(4/7) Updating linux booster images...
2021/07/15 07:18:54 modules.dep: unable to resolve module name for extramodules/vboxnetflt.ko.xz
(5/7) Updating linux initcpios...
==> Building image from preset: /etc/mkinitcpio.d/linux513.preset: 'default'
  -> -k /boot/vmlinuz-5.13-x86_64 -c /etc/mkinitcpio.conf -g /boot/initramfs-5.13-x86_64.img
==> Starting build: 5.13.1-3-MANJARO
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [autodetect]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
  -> Running build hook: [keyboard]
  -> Running build hook: [keymap]
  -> Running build hook: [encrypt]
==> WARNING: Possibly missing firmware for module: qat_4xxx
  -> Running build hook: [filesystems]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-5.13-x86_64.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux513.preset: 'fallback'
  -> -k /boot/vmlinuz-5.13-x86_64 -c /etc/mkinitcpio.conf -g /boot/initramfs-5.13-x86_64-fallback.img -S autodetect
==> Starting build: 5.13.1-3-MANJARO
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
  -> Running build hook: [keyboard]
  -> Running build hook: [keymap]
  -> Running build hook: [encrypt]
==> WARNING: Possibly missing firmware for module: qat_4xxx
  -> Running build hook: [filesystems]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-5.13-x86_64-fallback.img
==> Image generation successful
(6/7) Updating Grub-Bootmenu
Generating grub configuration file ...
Found theme: /usr/share/grub/themes/manjaro/theme.txt
Found linux image: /boot/vmlinuz-linux513
Found initrd image: /boot/intel-ucode.img
Found linux image: /boot/vmlinuz-5.13-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.13-x86_64.img
Found initrd fallback image: /boot/initramfs-5.13-x86_64-fallback.img
Found linux image: /boot/vmlinuz-5.10-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.10-x86_64.img
Found initrd fallback image: /boot/initramfs-5.10-x86_64-fallback.img
Found linux image: /boot/vmlinuz-5.8-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.8-x86_64.img
Found initrd fallback image: /boot/initramfs-5.8-x86_64-fallback.img
Found linux image: /boot/vmlinuz-5.7-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.7-x86_64.img
Found initrd fallback image: /boot/initramfs-5.7-x86_64-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.
Adding boot menu entry for UEFI Firmware Settings ...
Found memtest86+ image: /boot/memtest86+/memtest.bin
done
(7/7) Restore Linux kernel modules

==> Warning:
	 -> This computer hasn't been restarted for a while.
	 -> You are running an old kernel. In order to use a
	 -> new version of the kernel, please restart your
	 -> computer as soon as possible.

$ ls -l /boot
total 230808
drwxr-xr-x 3 root root     4096 Jan  1  1970 efi
drwxr-xr-x 6 root root     4096 Jul 15 07:13 grub
-rw-r--r-- 1 root root 31998962 Jul 13 21:57 initramfs-5.10-x86_64-fallback.img
-rw-r--r-- 1 root root 12885209 Jul 13 21:57 initramfs-5.10-x86_64.img
-rw-r--r-- 1 root root 35948389 Jul 15 07:13 initramfs-5.13-x86_64-fallback.img
-rw-r--r-- 1 root root 13318165 Jul 15 07:12 initramfs-5.13-x86_64.img
-rw-r--r-- 1 root root 33976036 Oct  8  2020 initramfs-5.7-x86_64-fallback.img
-rw-r--r-- 1 root root 13812955 Oct  8  2020 initramfs-5.7-x86_64.img
-rw-r--r-- 1 root root 33461136 Nov 18  2020 initramfs-5.8-x86_64-fallback.img
-rw-r--r-- 1 root root 13887145 Nov 18  2020 initramfs-5.8-x86_64.img
-rw-r--r-- 1 root root  4769792 Jun  8 20:31 intel-ucode.img
-rw-r--r-- 1 root root       22 Jul 11 14:58 linux510-x86_64.kver
-rw-r--r-- 1 root root       21 Jul 10 22:14 linux513-x86_64.kver
drwxr-xr-x 2 root root     4096 Jul 13 21:57 memtest86+
-rw-r--r-- 1 root root  9412768 Jul 13 21:57 vmlinuz-5.10-x86_64
-rw-r--r-- 1 root root  9668160 Jul 15 07:12 vmlinuz-5.13-x86_64
-rw-r--r-- 1 root root  6681472 Sep 13  2020 vmlinuz-5.7-x86_64
-rw-r--r-- 1 root root  6804736 Nov  5  2020 vmlinuz-5.8-x86_64
-rw-r--r-- 1 root root  9668160 Jul 15 07:12 vmlinuz-linux513

What is this?

The booster package is generating those kernel copies (which do not fit into manjaro installation).
See /usr/share/libalpm/hooks/90-booster-install.hook and the script this hook is calling /usr/share/libalpm/scripts/booster-install (relevant line/command):

install -Dm644 “${kernel}/vmlinuz” “/boot/vmlinuz-${pkgbase}”

It’s not needed and does cause all your troubles, remove it:

$ sudo pacman -Rns booster

Thank you so much @omano and @freggel.doe, you’ve found the culprit! After uninstalling booster everything works as intended. I have no idea why booster was installed

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