No boot from usb stick, just a grub shell

Hi everyone,

As I am very satisfied of its look and feel on my desktop, I am trying to install Manjaro 21.2.4 on a tablet. It is an Acer One 10 also called switch, with a tablet ‘attached’ to a removable keyboard.

Boot fails from the usb stick, the same that I used for installing Manjaro with a dual boot on my desktop. It just opens a grub shell and I am stuck with it.

Maybe the usb stick has kept a record of the dual boot on my other machine? No, when I use this stick again on my desktop, it starts a live session and no option to Windows.

The only thing that I had to modify on the usb stick is an efi file in /boot/efi. This is a trick that helps in the case of a 64 bit processor but a 32 bit uefi, as explained here: https://gist.github.com/franga2000/2154d09f864894b8fe84
But this should not interfere with grub and no selection of the OS to start with.

If you mean that file, i’d rather think it does interfere, as Manjaro needs its own (64bit) GRUB to boot…

1 Like

That’s it I mean the bootia32.efi file. Without it, my UEFI does not find the usb stick on boot.

This solution works well for other distributions. For instance LinuxMint that I have tested this way on my tablet.

I have followed this tutorial in order to use the grub shell to boot: https://szymonkrajewski.pl/how-to-boot-system-from-usb-using-grub/

I have indicated the path to /efi/boot/bootx64.efi
File path is returned correctly but I end up with an ‘unknown error’ after I enter the command root.

??

It looks like the command is set root.

Thank you for the suggestion but this does not work either.

As I understand from https://www.unix-ninja.com/p/Manually_booting_the_Linux_kernel_from_GRUB one should load the kernel. But I can’t find it, I have access only to /efi and /System Volume Information

At this stage, it would be interesting to analyse the boot process with maxi https://github.com/andreaskielkopf/maxi
What do you think @andreas85 ?

You can look at /boot
ls -lA /boot
to see the kernel, or you can use
mhwd-kernel li

Or you can try maxi.

But maxi has some dependencies !
It is written in java (needs java>=8), It needs a shell and some things mentioned on github. It does nothing without these programs.

If the dependencies are ok, it may work :wink:

But i never tried this on ARM

The worst thing that can happen is

  • that it does not run at all or
  • that it does find nothing (while everything is in place)

+ It does change nothing in the system

+ It does not need to be installed

The ‘system’ finds nothing there. As I said, I have access only to /efi and /System Volume Information. And I am afraid I can’t run java or anything else, except grub.

I think I will stop searching. The problem comes from efi files that do not match 1/ 64 bit instead of 32 bit for my very special UEFI or 2/ Manjaro which has special requirements compared to other linux. Too complicated for me.

EDIT: Just to say, it must be an Arch linux thing. Because I’ve just tried with Garuda linux which is also based on Arch and I get the same result. Whereas I can install Mint and even CloudReady / Google OS on my tablet thanks to the bootia32.efi trick.

1 Like

They seem to successfully booted and installed arch using refind (which also worked on apple’s 2006 32bit efi imacs):
https://bbs.archlinux.org/viewtopic.php?id=198968

1 Like

This sounds interesting. I’ll give it a try… But I must dig into the documentation first as I don’t know refind.
Thanks.