Boot issues after update

7 posts were merged into an existing topic: Manjaro does not boot after update - emergency shell

I managed to chroot manually. Then I reinstalled grub package: pacman -Syu grub
When I try to:

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

i get:

Installing for x86_64-efi platform.
grub-install: error: /boot/efi doesn't look like an EFI partition.

/dev/sda4 is formatted as fat32 and mounted to /boot/efi

Any idea how to resolve this?

@hxl, is your ESP really formatted in FAT32 (or FAT16 or even FAT12)? Does it carry the boot and ESP flag? Is the size at least 260 MiB? Do you have a gpt parted disk? Are you booting in UEFI mode? All that’s mandatory. Also, when you chrooting the mount point differs to /boot/efi, it’s most likely /mnt/boot/efi, this needs to be considered!


Partition table is gpt. I was chrooting like this:

sudo mount /dev/sda2 /mnt/manjaro-root
sudo mount /dev/sda4 /mnt/manjaro-root/@/boot/efi
sudo manjaro-chroot /mnt/manjaro-root/@ /bin/bash

And I use this command grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck from chrooted environment.

6 posts were merged into an existing topic: Manjaro does not boot after update - emergency shell

That is not the correct way to mount a BTRFS sub-volume…
You should start by mounting your root sub-volume @ at /mnt/manjaro-root
If /dev/sda4 is your ESP you would continue with mounting that at /mnt/manjaro-root/boot/efi
Followed by chroot as sudo manjaro-chroot /mnt/manjaro-root (no @ at end)

2 Likes

Yes, it helped!

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

I executed commands above from chrooted environment, now /boot/efi/EFI/manjaro/grubx64.efi file was generated.
Still when launching PC grub menu doesn’t appear. Having pressed F11 on start I can see boot list with Win10 and Manjaro USB stick only.

Maybe:
(Terminal) sudo nano /etc/default/grub
Change entry GRUB_TIMEOUT_STYLE=hidden to: GRUB_TIMEOUT_STYLE=menu
Save: Strg O /Strg x. And sudo update-grub

1 Like

That helped too. Now I can at least boot to the installed system from Manjaro USB Stick. I mean I can choose /boot/efi/EFI/manjaro/grubx64.efi file from Detect EFI bootloaders menu. But still I can’t see it in motherboard UEFI firmware interface.

Please post output of:
efibootmgr -v

BootCurrent: 0003
Timeout: 1 seconds
BootOrder: 0003,0000,0001,0002
Boot0000* Windows Boot Manager	HD(2,GPT,cb5a4e2d-3dfc-4f01-9cca-fa06ca117c14,0xfa000,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001  Hard Drive	BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0200)..GO..NO..........S.S.D. .1.2.8.G.B...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L.S.A.B.F.8.1.0.1.5.2.2.0.7.6. . . . . . ........BO..NO..........S.a.m.s.u.n.g. .S.S.D. .8.6.0. .E.V.O. .5.0.0.G.B...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L.4.S.N.F.Z.N.N.F.0.8.7.9.9.4. .V. . . . ........BO..NO..........W.D.C. .W.D.6.4.0.0.A.A.D.S.-.0.0.M.2.B.0...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L. . . . .W. .-.D.C.W.V.A.7.5.2.4.4.2.0.8........BO
Boot0002  USB KEY	BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0b00)..GO..NO..........K.i.n.g.s.t.o.n.D.a.t.a.T.r.a.v.e.l.e.r. .3...0...................\.,.@.r.d.=.X..........A.......................F..Gd-.;.A..MQ..L.1.8.3.1.B.F.B.7.7.F.A.9.F.3.8.1.C.9.9.F.0.2.9.B........BO
Boot0003* UEFI: KingstonDataTraveler 3.0, Partition 1	PciRoot(0x0)/Pci(0x14,0x0)/USB(17,0)/HD(1,MBR,0x0,0x53e904,0x2000)..BO

Indeed missing.

But you should be able to create a new one.

Please post output of:

lsblk
findmnt |grep efi

btw. you did boot from hdd now (via stick) or are you running on the live ISO?

~ >>> lsblk                                                                 [1]
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0 116,1M  1 loop /var/lib/snapd/snap/icloud-for-linux/166
loop1    7:1    0  30,9M  1 loop /var/lib/snapd/snap/snapd/9721
loop2    7:2    0  30,9M  1 loop /var/lib/snapd/snap/snapd/9607
loop3    7:3    0  55,4M  1 loop /var/lib/snapd/snap/core18/1932
loop4    7:4    0 142,1M  1 loop /var/lib/snapd/snap/icloud-for-linux/205
loop5    7:5    0    61M  1 loop /var/lib/snapd/snap/core20/634
loop6    7:6    0  55,3M  1 loop /var/lib/snapd/snap/core18/1885
sda      8:0    0 119,2G  0 disk 
├─sda1   8:1    0     8G  0 part [SWAP]
├─sda2   8:2    0    24G  0 part /
├─sda3   8:3    0  86,7G  0 part /home
└─sda4   8:4    0   512M  0 part /boot/efi
sdb      8:16   0 465,8G  0 disk 
├─sdb1   8:17   0   499M  0 part 
├─sdb2   8:18   0   100M  0 part 
├─sdb3   8:19   0    16M  0 part 
└─sdb4   8:20   0 465,2G  0 part /mnt/WIN10SYS
sdc      8:32   0 596,2G  0 disk 
└─sdc1   8:33   0 596,2G  0 part /mnt/STORAGE
sdd      8:48   1  14,4G  0 disk 
├─sdd1   8:49   1   2,6G  0 part /run/media/hxl/MANJARO_GNOME_202
└─sdd2   8:50   1     4M  0 part
findmnt |grep efi                                                        
│ ├─/sys/firmware/efi/efivars              efivarfs      efivarfs        rw,nosuid,nodev,noexec,relatime
├─/boot/efi                                /dev/sda4     vfat            rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro

I did boot to already installed system via stick.

Ok, please run and show output of:

sudo efibootmgr -c -d /dev/sda -p 4 -l /EFI/manjaro/grubx64.efi -L "Manjaro" -v
sudo efibootmgr -c -d /dev/sda -p 4 -l /EFI/manjaro/grubx64.efi -L "Manjaro" -v
BootCurrent: 0003
Timeout: 1 seconds
BootOrder: 0004,0003,0000,0001,0002
Boot0000* Windows Boot Manager	HD(2,GPT,cb5a4e2d-3dfc-4f01-9cca-fa06ca117c14,0xfa000,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001  Hard Drive	BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0200)..GO..NO..........S.S.D. .1.2.8.G.B...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L.S.A.B.F.8.1.0.1.5.2.2.0.7.6. . . . . . ........BO..NO..........S.a.m.s.u.n.g. .S.S.D. .8.6.0. .E.V.O. .5.0.0.G.B...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L.4.S.N.F.Z.N.N.F.0.8.7.9.9.4. .V. . . . ........BO..NO..........W.D.C. .W.D.6.4.0.0.A.A.D.S.-.0.0.M.2.B.0...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L. . . . .W. .-.D.C.W.V.A.7.5.2.4.4.2.0.8........BO
Boot0002  USB KEY	BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0b00)..GO..NO..........K.i.n.g.s.t.o.n.D.a.t.a.T.r.a.v.e.l.e.r. .3...0...................\.,.@.r.d.=.X..........A.......................F..Gd-.;.A..MQ..L.1.8.3.1.B.F.B.7.7.F.A.9.F.3.8.1.C.9.9.F.0.2.9.B........BO
Boot0003* UEFI: KingstonDataTraveler 3.0, Partition 1	PciRoot(0x0)/Pci(0x14,0x0)/USB(17,0)/HD(1,MBR,0x0,0x53e904,0x2000)..BO
Boot0004* Manjaro	HD(4,GPT,167ace5b-a90d-d942-a0f9-9cf0cd398247,0x800,0x100000)/File(\EFI\manjaro\grubx64.efi)

All right. Looks good.

Reboot and see what happens. :wink: :crossed_fingers:

:man_shrugging: Unfortunately, I booted again via USB Stick. Boot0004 disappeared:

~ >>> efibootmgr -v                                                            
BootCurrent: 0003
Timeout: 1 seconds
BootOrder: 0003,0000,0001,0002
Boot0000* Windows Boot Manager	HD(2,GPT,cb5a4e2d-3dfc-4f01-9cca-fa06ca117c14,0xfa000,0x32000)/File(\EFI\MICROSOFT\BOOT\BOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001  Hard Drive	BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0200)..GO..NO..........S.S.D. .1.2.8.G.B...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L.S.A.B.F.8.1.0.1.5.2.2.0.7.6. . . . . . ........BO..NO..........S.a.m.s.u.n.g. .S.S.D. .8.6.0. .E.V.O. .5.0.0.G.B...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L.4.S.N.F.Z.N.N.F.0.8.7.9.9.4. .V. . . . ........BO..NO..........W.D.C. .W.D.6.4.0.0.A.A.D.S.-.0.0.M.2.B.0...................\.,.@.r.d.=.X..........A...........................>..Gd-.;.A..MQ..L. . . . .W. .-.D.C.W.V.A.7.5.2.4.4.2.0.8........BO
Boot0002  USB KEY	BBS(HD,,0x0)/VenHw(5ce8128b-2cec-40f0-8372-80640e3dc858,0b00)..GO..NO..........K.i.n.g.s.t.o.n.D.a.t.a.T.r.a.v.e.l.e.r. .3...0...................\.,.@.r.d.=.X..........A.......................F..Gd-.;.A..MQ..L.1.8.3.1.B.F.B.7.7.F.A.9.F.3.8.1.C.9.9.F.0.2.9.B........BO
Boot0003* UEFI: KingstonDataTraveler 3.0, Partition 1	PciRoot(0x0)/Pci(0x14,0x0)/USB(17,0)/HD(1,MBR,0x0,0x53e904,0x2000)..BO

Could you try:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --removable

1 Like

It worked :champagne:
I’ve read the description of --removable and still don’t get how this works :thinking:

1 Like

Seems some vendors have “bad” UEFI implementation which need the file at the defaul/fallback path.
See here:

https://wiki.archlinux.org/index.php/GRUB#Default/fallback_boot_path