[SOLVED] EFI stuff crashes system on istallation

When I try to install Manjaro (KDE or Architect), my system crashes at the "installing bootloader" stage (probably) because of weird EFI things that I don't fully understand.

Running efivar-testeralso crashes the system.
My machine is an "Acer Aspire ES1-533".

I know it's not a lot of information, but maybe someone here knows how to fix my issue? Thanks in advance.

with USB installer
can you open a terminal and return

inxi -Fxxxz
fdisk -l

inxi -Fxxxz:

System:    Host: manjaro-architect Kernel: 4.19.20-1-MANJARO x86_64 bits: 64 compiler: gcc v: 8.2.1 Console: N/A dm: N/A 
           Distro: Manjaro Linux 
Machine:   Type: Laptop System: Acer product: Aspire ES1-533 v: V1.12 serial: <filter> 
           Mobo: Acer model: Stego_AP v: V1.12 serial: <filter> UEFI: Insyde v: 1.12 date: 10/18/2017 
Battery:   ID-1: BAT1 charge: 27.1 Wh condition: 27.1/36.7 Wh (74%) volts: 12.5/11.3 model: COMPAL 0038314234314341 
           type: Li-ion serial: <filter> status: Full 
CPU:       Topology: Quad Core model: Intel Pentium N4200 bits: 64 type: MCP arch: Goldmont rev: 9 L2 cache: 1024 KiB 
           flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 8756 
           Speed: 1393 MHz min/max: 800/2500 MHz Core speeds (MHz): 1: 1393 2: 1332 3: 1393 4: 1394 
Graphics:  Device-1: Intel Celeron N3350/Pentium N4200/Atom E3900 Series Integrated Graphics vendor: Acer Incorporated ALI 
           driver: i915 v: kernel bus ID: 00:02.0 chip ID: 8086:5a84 
           Display: server: No display server data found. Headless machine? tty: 240x67 
           Message: Unable to show advanced data. Required tool glxinfo missing. 
Audio:     Device-1: Intel Celeron N3350/Pentium N4200/Atom E3900 Series Audio Cluster vendor: Acer Incorporated ALI 
           driver: snd_hda_intel v: kernel bus ID: 00:0e.0 chip ID: 8086:5a98 
           Sound Server: ALSA v: k4.19.20-1-MANJARO 
Network:   Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: Acer Incorporated ALI driver: r8169 
           v: kernel port: 1000 bus ID: 01:00.0 chip ID: 10ec:8168 
           IF: enp1s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
           Device-2: Intel Dual Band Wireless-AC 3168NGW [Stone Peak] driver: N/A port: 1000 bus ID: 02:00.0 
           chip ID: 8086:24fb 
Drives:    Local Storage: total: 935.43 GiB used: 12.9 MiB (0.0%) 
           ID-1: /dev/sda type: USB vendor: Generic model: Flash Disk size: 3.92 GiB serial: <filter> rev: 8.07 scheme: MBR 
           ID-2: /dev/sdb vendor: Toshiba model: MQ01ABD100 size: 931.51 GiB speed: 3.0 Gb/s rotation: 5400 rpm 
           serial: <filter> rev: 3J scheme: GPT 
Partition: ID-1: / size: 5.71 GiB used: 12.9 MiB (0.2%) fs: overlay source: ERR-102 
Sensors:   System Temperatures: cpu: 44.0 C mobo: N/A 
           Fan Speeds (RPM): N/A 
Info:      Processes: 121 Uptime: 12m Memory: 7.62 GiB used: 201.4 MiB (2.6%) Init: systemd v: 239 Compilers: gcc: N/A 
           Shell: bash (sudo) v: 5.0.0 inxi: 3.0.32 

fdisk -l

Disk /dev/loop0: 50.5 MiB, 52957184 bytes, 103432 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop1: 473.3 MiB, 496328704 bytes, 969392 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sda: 3.9 GiB, 4204789760 bytes, 8212480 sectors
Disk model: Flash Disk      
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot   Start     End Sectors   Size Id Type
/dev/sda1  *         64 1192415 1192352 582.2M  0 Empty
/dev/sda2       1192416 1200607    8192     4M ef EFI (FAT-12/16/32)


Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: TOSHIBA MQ01ABD1
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 80A54D7D-57C2-4CB5-A880-5F8F095E3631

Device       Start        End    Sectors  Size Type
/dev/sdb1     2048    1050623    1048576  512M EFI System
/dev/sdb2  1050624 1953523711 1952473088  931G Linux filesystem

This is run from an Manjaro Architect USB live system.

maybe you need to update bios first

10/18/2017

I've managed to fix my issue by running an architect install without installing the bootloader, then manually installing and configuring grub without writing EFI variables, and moving the generated .efi file it to the default location in /boot/EFI/BOOT.

Thanks for helping!

1 Like

Can you share how you manually install grub?
Thanks.

First you do all the other installation steps, you just don't install the bootloader.
Then, supposing your root partition is sda2 and your EFI sda1:

# mount all drives and special devices into /mnt for chroot
sudo mount /dev/sda2 /mnt
sudo mkdir /mnt/boot/efi
sudo mount /dev/sda1 /mnt/boot/efi
for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done
# copy resolv.conf into future chroot, so you have internet
cp /etc/resolv.conf /mnt/etc/resolv.conf
sudo modprobe efivarfs
sudo pacman -Sy grub
# --no-nvram prevents writing EFI variables, which would crash the system
sudo grub-install --no-nvram --root-directory=/mnt
# configure grub from inside the chroot
sudo chroot /mnt
pacman -Sy grub
sudo update-grub

You could probably avoid the resolv.conf and pacman hassle by just specifying grub as an additional package in the Architect system installation step.

As I've said, you'll now have to move the generated .efi file in /boot/efi/EFI/manjaro to /boot/efi/EFI/BOOT.

1 Like

Thanks for the explanation.
Can you explain the '--no-nvram' parameter in the grub-install command?
Does that make installation of $esp (/boot/efi) to sda2 and not to a nvme partition $esp?
If not, what does that do?

BTW, here's how I what I do to fix grub issues. I used to have a grub-rescue cd (usb).

Cheers.

edit - I noted the

# --no-nvram prevents writing EFI variables, which would crash the system

Why would we want to prevent writing efi variables? And why would that crash the system?

ps: --root-directory=/mnt
Isn't that deprecated to --boot-directory? so '--boot-directory=/mnt/boot' instead?

Can you explain the '--no-nvram' parameter in the grub-install command?

From what I understand, the motherboard looks into the nvram to get bios information. So grub will usually write to the nvram on the motherboard so the system can then find the grub efi bootloader entry.

However, this particular model of motherboard doesn't seem to support the way grub writes to nvram and crashes completely when trying to do so. (In my case even reading using efivar-tester crased the system)

So grub-install --no-nvram does everything a normal grub-install would do, apart from it not writing to nvram and thus not informing the motherboard where the entry can be found.

PS: please take everything I say with a grain of salt. I am not at all an expert on any of this.

ps: --root-directory=/mnt
Isn't that deprecated to --boot-directory? so '--boot-directory=/mnt/boot' instead?

No idea, it still worked without any warnings for me.

2 Likes

Thanks again, explanation is clear.
One last thing (I promise :slightly_smiling_face:)
What is computer make and model or motherboard?

Cheers and take care.

inxi gives me the following:

  • Type: Acer product: Aspire ES1-533 v: V1.12 serial: <filter>
  • Mobo: Acer model: Stego_AP v: V1.12 serial: <filter> UEFI: Insyde v: 1.12 date: 10/18/2017

I hope that is the information you wanted.

1 Like

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