Manjaro won't boot after full system upgrade

I decided to upgrade my Manjaro system with pacman -Syu and my machine got rebooted. After restart Grub greets me with message:
error: file '/boot/vmlinuz-4.19-x86_64
error: you need to load kernel first

Things are not looking good, downloaded the latest Manjaro and booted in from USB, did 'manjaro-chroot -a' and got 'into' my old installation. 'pacman -Syu' does nothing, since all packages are up to date.

So I tried 'sudo mhwd-kernel -li' and it lists both installed kernels on broken installation. Next I tried 'sudo mhwd-kernel -i linux419' but got an error: error: no targets specified (use -h for help). When I tried installing kernel linux54 (same one as live version I'm using to fix the issue), it says it can't reinstall the current kernel, which leads me to believe that this command is not running on the chrooted environment.

For whatever reason I tried 'mkinitcpio -P' next and it gives some error about preset not found.

I'm totally lost and need help desperately. How can I fix the broken kernel upgrade in Manjaro?

Welcome to Manjaro.
This forum has a search function, don't be afraid to use it.

Have exactly same problem
Please post if you get it resolved.

I think my problem is actually that file /boot/vmlinuz-4.19-x86_64 does not exist at all. Actually in /boot I have no kernel whatsoever, only 'initramfs-*.img' files are there.

If need help, you need to post details as per the link.
This link --> [Kernel Boot Method]
Without needed information, nobody can help.

If you cannot boot to installed OS, boot up livecd OS and provide

sudo parted -l
sudo blkid
efibootmgr -v

Then use the livecdOS file manager and go to the installed OS partition and print out contents of

Note: ‘parted -l’ --> small ‘L’ (not 'one') and provide information of all disks.
Explain partitions if necessary since this is from livecd OS

pasting the info below.

[manjaro-gnome boot]# sudo parted -l
Model: JetFlash TS2GJFV35 (scsi)
Disk /dev/sda: 2051MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 2      1957MB  1961MB  4194kB  primary               esp

Model: USB 2.0 Flash Disk (scsi)
Disk /dev/sdb: 1011MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 1      32.3kB  1011MB  1011MB  primary  fat16        boot

Model: SAMSUNG MZVKW1T0HMLH-000H1 (nvme)
Disk /dev/nvme0n1: 1024GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system     Name  Flags
 1      2098kB  317MB   315MB   fat32                 boot, esp
 2      317MB   987GB   987GB   ext4
 3      987GB   1024GB  37.0GB  linux-swap(v1)        swap

[manjaro-gnome boot]# sudo blkid
/dev/nvme0n1p1: UUID="CFB3-C619" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="67a424e1-d0de-4d18-94d2-1182b48694e2"
/dev/nvme0n1p2: UUID="a6e836ed-9680-477e-9e7d-6d26195385b6" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="a58760f7-396c-47f5-bd76-498599ae953e"
/dev/nvme0n1p3: UUID="cd74ba8a-b13f-457a-9b0e-c177f3b9c9f2" TYPE="swap" PARTUUID="248ab61b-483f-4633-b660-c86e667ae9e6"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"
/dev/sda1: BLOCK_SIZE="2048" UUID="2019-12-29-11-27-23-00" LABEL="MJRO1815" TYPE="iso9660"
/dev/sdb1: SEC_TYPE="msdos" UUID="402D-3E09" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="91f72d24-01"
[manjaro-gnome boot]# efibootmgr -v
BootCurrent: 000E
Timeout: 0 seconds
BootOrder: 000B,000E,000F,000C,000D,0000,0001,0002,0003,0004,0005,0006,0007,0008,0009,000A,0010
Boot0000  Startup Menu	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)....ISPH
Boot0001  System Information	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot0002  Bios Setup	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot0003  3rd Party Option ROM Management	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot0004  System Diagnostics	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot0005  System Diagnostics	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot0006  System Diagnostics	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot0007  System Diagnostics	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot0008  Boot Menu	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot0009  HP Recovery	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot000A  Network Boot	FvVol(a881d567-6cb0-4eee-8435-2e72d33e45b5)/FvFile(9d8243e8-8381-453d-aceb-c350ee7757ca)......ISPH
Boot000B* Manjaro	HD(1,GPT,67a424e1-d0de-4d18-94d2-1182b48694e2,0x1001,0x96001)/File(\EFI\Manjaro\grubx64.efi)....ISPH
Boot000C* SAMSUNG MZVKW1T0HMLH-000H1-S34DNX0JA00554	BBS(HD,SAMSUNG MZVKW1T0HMLH-000H1-S34DNX0JA00554,0x400)/PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)/NVMe(0x1,00-25-38-CA-71-B0-2A-1C)......ISPH
Boot000D* Intel Corporation: IBA CL Slot 00FE v0112	BBS(Network,Intel Corporation: IBA CL Slot 00FE v0112,0x0)/PciRoot(0x0)/Pci(0x1f,0x6)/IPv4(,0,0)......ISPH
Boot000E* JetFlash Mass Storage Device 6AXBJ6ZI	PciRoot(0x0)/Pci(0x14,0x0)/USB(0,0)N.....YM....R,Y.....ISPH
Boot000F* USB 2.0 Flash Disk 18b5cf44cbc253	BBS(HD,USB 2.0 Flash Disk 18b5cf44cbc253,0x900)/PciRoot(0x0)/Pci(0x14,0x0)/USB(255,255)......ISPH
Boot0010  USB 2.0 Flash Disk 18b5cf44cbc253	PciRoot(0x0)/Pci(0x14,0x0)/USB(4,0)N.....YM....R,Y.....ISPH
[manjaro-gnome boot]# cat /etc/fstab
# /etc/fstab: static file system information.
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=CFB3-C619                            /boot/efi      vfat    defaults,noatime 0 2
UUID=a6e836ed-9680-477e-9e7d-6d26195385b6 /              ext4    defaults,noatime 0 1
UUID=cd74ba8a-b13f-457a-9b0e-c177f3b9c9f2 swap           swap    defaults,noatime 0 2

also list of files in /boot after chrooting into the system with liveCD, note that actual kernel is missing:

[manjaro-gnome boot]# ls /boot/
efi   initramfs-4.14-x86_64-fallback.img  initramfs-4.19-x86_64-fallback.img  intel-ucode.img       linux419-x86_64.kver
grub  initramfs-4.14-x86_64.img           initramfs-4.19-x86_64.img           linux414-x86_64.kver  memtest86+

Noted. It is not good to have kernels gone missing.
Also noted you had chroot and tried to install kernel and failed.

I think you have to reinstall the OS. Sorry.

actually, I don't. I think I got lucky, this worked like magic under manjaro chroot:

pacman -S linux419 linux419-headers 
mkinitcpio -P 

Good to hear you've fixed it.

So pacman install of kernels works while mhwd-kernel fails?
I have always used mhwd-kernel for kernel installation and I've not failed in any.
But I understand in your case, it was a failed upgrade. I don't have any failed upgrade.
I also do not have headers installed.

@dalto @linux-aarhus
Any input? Thanks.

mhwd-kernel works as advertised - if the root is the current booted root - just tested - my assumption was faulty - mhwd-kernel works in a chrooted environment - I have just booted a stick on linux54 - chrooted to an environment with linux54 and installed linux419 using mhwd-kernel -i.

I mounted the partitions and used

# manjaro-chroot /mnt /bin/bash

mhwd-kernel -li
  * linux54
mhwd-kernel -i linux419

IMO in chrooted environment mhwd-kernel shouldn't try to detect currently running kernel as it's not relevant for the environment it's actually asked to install/work on.

I agree - nevertheless - I managed to make it work - and that may be coincidence itself as I didn't expect it to.

This is my initial thoughts - edited out from my previous comment.

Like systemd - mhwd will should not work in a chrooted environment - because the environment needs to be booted.

If you try to start a service in a chroot you will get an error - the root is not the running root.

This is reasonable limitation to a chroot - after all chroot is a fake root - not a jail root.

I too think that.
But in this topic and here and I think a couple more, they are having problems with mhwd-kernel in chroot while pacman install kernels worked. I thought you are aware of it.

I myself have done this several times but the difference is that I have a working system (as yours I think) and the others do not have a working system and they need to chroot into it to fix it and they cannot by using mhwd-kernel. I wonder what's the cause. Hope we can find out fast.

I'm careful of reinstalling a kernel while being in that kernel, and that's why I've always suggested installing another kernel different from the booted system. I've been told it is possible and linux-aarhus mentioned it above. But since I've not tried it, I did not suggest reinstalling the booted kernel.

I think you are correct in that assumption.

From this post but not using chroot (but booted into OS) , mkinitcpio failed, but fixing util-linux helped. I thought that since the OP was using nvme, the util-linux helped specifically for nvme disks in his case. But I wonder if this could be the cause as well here.

The package that was faulty was util-linux , just for the record.

I know nothing about debugging packages or understand anything by looking at the files. And not sure if it can lead to anything. But hope someone else can look into it.

A question that I cannot know if the question is a good question or a stupid one.
Does mhwd-kernel require util-linux while pacman install does not?
So we can highlight or eliminate a possible cause.

Hey guys, I can confirm this inconvenient event happend for me aswell :-/ I updated my manjaro xfce distribution this evening and was really scared to see

error: file '/boot/vmlinuz-5.4.17-x86_64 not found
error: you need to load kernel first

upon rebooting. Interestingly my kernel and fallbacks disappeard... hence the quite literal error message telling me that i have to boot a kernel which is not present

Your thread helped me solve the problem aswell ! Big thanks to the community <3 however it would be nice to find out what went wrong with the update..

Greetings !

There is an explanation in this #announcements:news :

1 Like

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

Forum kindly sponsored by