New Manjaro install (dual boot) gives "can't find UUID" error

Hi everyone, newbie here.

I just got a computer with Windows 10, and wanted to install Manjaro as a dual boot.
I followed the instructions provided in the user guide :

  1. I disabled SecureBoot in my UEFI

  2. I shrinked my Windows partition with Windows’ utility

  3. I booted on a Manjaro Live USB

  4. I used the install wizard and used the “replace existing partition” option (by selecting the free partition resulting from the shrink in 1)

  5. I shutdown my computer, removed the USB key, booted it up

  6. I get to GRUB, from there I can boot to Windows without a problem
    However, when I try to boot Manjaro I get the /new_root: can't find UUID=... error

I checked the UUID given in the error to see if it matches the partition where Manjaro is installed, and it is the same.

I don’t know what to do, as it does not seem to be a disk detection issue (since it’s the same one for Windows and Manjaro, and Windows boots correctly, btw I don’t know if that matters but my disk is a NVME SSD), neither a kernel update issue as I could often see on forums concerning this “can’t find UUID” error. (Some users solved it by simply reinstalling Manjaro, but I’m just trying to install it in the first place…)

Finally as I’m a newbie I do not really understand the solutions provided on these forums nor the commands that people want OP to try. So if I need to run specific commands, please explain me what they do and the goal behind so that I can understand it and solve this kind of issue by myself in the future :slight_smile:

Many thanks in advance !

Edit: formatting (+ I will provide detailed system information later)

Check that ALL the UUID’s of the partitions used in “fstab”:

cat /etc/fstab

They match the real UUID’s:

lsblk -f

If they are not the same, update it:

sudo nano /etc/fstab

use USB iso manjaro

sudo lsblk -fs
sudo parted -l
sudo manjaro-chroot -a
nano /etc/fstab
update-grub
exit ( end-chroot )

@Wibol I guess you meant on the Live USB Manjaro

lsblk -f gives me

nvme0n1p1 vfat      FAT32            ESP              C2F3-279A                                                                                                                                          
nvme0n1p2                                                                                                 
nvme0n1p3 BitLocker 2                                                                                     
nvme0n1p4 ntfs                       WINRETOOLS       040AABD80AABC4D0                                    
nvme0n1p5 ntfs                       Image            1CF0AC1FF0AC015E                                    
nvme0n1p6 ntfs                       DELLSUPPORT      F036012C3600F57E                                    
nvme0n1p7 ext4      1.0                               b64993c0-9cac-46bd-a692-8e861bdf404e  313,3G     2% /run/media/manjaro/b64993c0-9cac-46bd-a692-8e861bdf404e

However the file opened by the command cat /etc/fstab has only one partition :

# <file system>           <dir>   <type>     <options>      <dump>  <pass>
/dev/mapper/root-image    /       auto       defaults       0       0

I think that is not what I’m supposed to get, because when I browse manually with Dolphin to the new partition created, the file I find in run/media/manjaro/b64993c0-(...)/etc/fstab/ is different :

# <file system>      <mount point>   <type>     <options>          <dump>  <pass>
UUID=C2F3-279A       /boot/efi       vfat       umask=0077         0       2
UUID=b64993c0-(...)  /               ext4       defaults,noatime   0       1

So I think that’s the file I you were talking about, and the UUIDs seem to be good, right ?


@stephane sudo manjaro-chroot -a returns

grub-probe: error: cannot find a GRUB drive for /dev/sda1. Check your device.map.
grub-probe: error: cannot find a GRUB drive for /dev/sda1. Check your device.map.
==> Detected systems:
 --> 0) ManjaroLinux
==> Select system to mount [0-0] :

(I enter 0)

==> ERROR: You can't mount 0!

I assume that this device.map issue is also what makes cat /etc/fstab returns the wrong file…

You are right. I was too brief in my notes. I’m sorry.

Everything seems fine, but to avoid confusion, your second full line of “fstab” should be:

UUID=b64993c0-9cac-46bd-a692-8e861bdf404e  /  ext4  defaults,noatime   0       1

If it is correct, I don’t understand what could be happening. Much less the reason why you can’t chroot. As a last option on my part, you can check that the GRUB doesn’t contain any reference to a non-existent or incorrect UUID with:

cat /etc/default/grub

Everything seems fine, but to avoid confusion, your second full line of “fstab” should be:
UUID=b64993c0-9cac-46bd-a692-8e861bdf404e / ext4 defaults,noatime 0 1

Yes I shorted the UUID but I’ve got that indeed
I checked cat /etc/default/grub but I see no reference to any UUID at all, is it normal ?

Thanks for your help !

Yes, it is normal when there isn’t swap partition and there is nowhere to resume from hibernation.

Is it normal too that I have no file in /boot/efi ?

If I sum it all up, my system is correctly installed, UUIDs are correctly referenced, but GRUB does not seem to be able to find any partition I made for Manjaro (I just tried to reinstall everything with the manual partitioning, following the method explained here, and I now get an additional hibernation error at boot, because it can’t find the swap partition either.

Isn’t it weird since I’ve got no problem booting to Windows from GRUB ?
Could another bootloader work better than GRUB ?
Are Windows or my UEFI settings preventing GRUB from seing anything else than Windows’ partition ? (so many questions, I’m sorry for that)


Edit:
I also noticed that I have no /boot/grub/device.map file.
I wanted to see if this (https://askubuntu.com/questions/484042/boot-grub-device-map-is-missing-on-ubuntu-14-04) could solve my problem, but grub-mkdevicemap is not a valid command…