Acer ES1-732: Bootloader Installation under EFI-(Arch) Linux results in freeze

AlbaClassica
AlbaClassica Member Posts: 6 New User
edited August 2018 in Aspire Laptops
Hi there,

let me quickly explain the situation im facing right now: I've been trying to get Arch Linux (x64) working on an Acer ES1-732-p7VY machine, although the bootloader installation fails and makes the machine freeze. Prescisely, the modification of EFI entries causes the fault. For this reason, my question is especially related to the following topics:

https://community.acer.com/en/discussion/471754/acer-aspire-es-15-es1-533-c3uw-legacy-bios-missing
https://askubuntu.com/questions/862946/unable-to-install-ubuntu-on-acer-aspire-es1-533

Because my situation is somewhat different, I decided to start a new topic.

So, first of all let me summarize the most important technical details
  • The machine is an ES1-732-p7VY
  • I'm trying to install an Arch Linux (x64) according to the official installation guide
  • SecureBoot is disabled, EFI mode enabled
  • I'm booting from USB flash drive
Actually, the installation works fine, except for the bootloader stuff. The moment I'm trying to set up grub, the system freezes and cannot be operated anymore. The fault is caused by the following command

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

If you step into this, you can see, that the following command is crashing the process

efibootmgr -c- d /dev/sdb -p 1 -w -L arch_grub -I \EFI\arch_grub\grubx64.efi

After playing around, I noticed, that any EFI-related modification using efibootmgr (and probably any similar tools) results in a crash.

Unfortunately I could'nt set up a gdb session in order to review the underlying operations since also gdb freezes.

So, ultimately my questions are:
Why does efibootmgr make the system freeze?How can this be avoided?Is there any workaround/fix (except using the 'fallback-directory-solution')? So far - also for other distros - I was unable to find any explanation on the internet.Feel free to ask for more (technical) details!

Thanks in advance. 



Comments

  • Is hd converted to gpt? If it is not converted, it will not work!
    Oi! Eu não sou sou a cortana! Mas estou aqui para ajudar! Hi! I'm not the cortana! But I'm here to help!
    Se você gostou da minha resposta, marque como solução clicando em sim! If you liked my answer, mark it as a solution by clicking on yes!
    Aceite somente a resposta que ajudou a solucionar o seu problema! Please accept only the response that helped to solve your problem!
    Detection tool click here to find the serial number or partnumber of your model!                                                          

               
      egydiocoelho Trailblazer
     
    ProductKey clique aqui para descobrir o serial do windows! click here to discover the windows serial!
    Para usuários da comunidade inglesa, espanhola, francesa e alemã, usarei o google tradutor! :)
    For users of the English, Spanish, French and German community, I will be using google translator! :) 
  • AlbaClassica
    AlbaClassica Member Posts: 6 New User
    Is hd converted to gpt? If it is not converted, it will not work!
    What exactly do you mean by 'converted'? Are you asking if there exists an ESP according to https://wiki.archlinux.org/index.php/EFI_system_partition#GPT_partitioned_disks? If so, then yes, there is an ESP, which is /dev/sdb1 for me!
  • The hd should be converted to gpt format in linux installation! I do not understand a lot of linux, but to install windows 10 in uefi mode, you need to press shift + f10 on setup and type diskpart, disk list, sel disk x, clean, convert gpt! You can convert hd on windows 10 and then exit to install linux! It is very likely that your hd is in mbr format and not in gpt!
    Oi! Eu não sou sou a cortana! Mas estou aqui para ajudar! Hi! I'm not the cortana! But I'm here to help!
    Se você gostou da minha resposta, marque como solução clicando em sim! If you liked my answer, mark it as a solution by clicking on yes!
    Aceite somente a resposta que ajudou a solucionar o seu problema! Please accept only the response that helped to solve your problem!
    Detection tool click here to find the serial number or partnumber of your model!                                                          

               
      egydiocoelho Trailblazer
     
    ProductKey clique aqui para descobrir o serial do windows! click here to discover the windows serial!
    Para usuários da comunidade inglesa, espanhola, francesa e alemã, usarei o google tradutor! :)
    For users of the English, Spanish, French and German community, I will be using google translator! :) 
  • AlbaClassica
    AlbaClassica Member Posts: 6 New User
    Well, the conversion is - as far as I know - just a 'layout-conversion', hence you cannot compare it to e.g. the conversion from WMA to mp3. Meaning, not the problem here!
  • Take a look at this video, maybe it will help! At 02:03 you should see that gpt must be present! https://www.youtube.com/watch?v=DfC5hgdtbWY
    Oi! Eu não sou sou a cortana! Mas estou aqui para ajudar! Hi! I'm not the cortana! But I'm here to help!
    Se você gostou da minha resposta, marque como solução clicando em sim! If you liked my answer, mark it as a solution by clicking on yes!
    Aceite somente a resposta que ajudou a solucionar o seu problema! Please accept only the response that helped to solve your problem!
    Detection tool click here to find the serial number or partnumber of your model!                                                          

               
      egydiocoelho Trailblazer
     
    ProductKey clique aqui para descobrir o serial do windows! click here to discover the windows serial!
    Para usuários da comunidade inglesa, espanhola, francesa e alemã, usarei o google tradutor! :)
    For users of the English, Spanish, French and German community, I will be using google translator! :) 
  • AlbaClassica
    AlbaClassica Member Posts: 6 New User
    Thanks for the video. Unfortunately it was leading nowhere since the problem is not the GPT thing, but the 'bootloader registration'. In my case it says
    Copied "/usr/[...]" to "/boot/EFI/BOOT/BOOTX64.EFI

    and freezes again, meaning the problem is the copying as such. 

    Does anybody know how this can be avoided?
  • AlbaClassica
    AlbaClassica Member Posts: 6 New User
    I found out something very interesting. When I got to the bootloader installation part, the boot partition somehow remounts in ro-mode, meaning any write access is impossible. I think, this is the reason, why the copying of EFI makes the system crash. But why is it remounted? And why in ro?
  • Commodore_1995#
    Commodore_1995# ACE Posts: 97,695 Trailblazer
    edited August 2018
    Although I do not understand much of linux, check with these keys that have some differences!
    # pacman -S grub-efi-x86_64 efibootmgr
    # grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
    # cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
    
    and after: # efibootmgr -c -g -d /dev/sdX -p Y -w -L "Arch Linux (GRUB)" -l '\\EFI\\arch_grub\\grubx64.efi'
    
    Site: https://wiki.archlinux.org/index.php/GRUB_(Português)
    Oi! Eu não sou sou a cortana! Mas estou aqui para ajudar! Hi! I'm not the cortana! But I'm here to help!
    Se você gostou da minha resposta, marque como solução clicando em sim! If you liked my answer, mark it as a solution by clicking on yes!
    Aceite somente a resposta que ajudou a solucionar o seu problema! Please accept only the response that helped to solve your problem!
    Detection tool click here to find the serial number or partnumber of your model!                                                          

               
      egydiocoelho Trailblazer
     
    ProductKey clique aqui para descobrir o serial do windows! click here to discover the windows serial!
    Para usuários da comunidade inglesa, espanhola, francesa e alemã, usarei o google tradutor! :)
    For users of the English, Spanish, French and German community, I will be using google translator! :) 
  • AlbaClassica
    AlbaClassica Member Posts: 6 New User
    # pacman -S grub-efi-x86_64 efibootmgr
    # grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grub --recheck
    As I mentioned above, this is the command resulting in a freeze. I don't see, how your example is different from mine!?
  • Your debug writing is in the end! I do not know if it interferes with anything!
    Oi! Eu não sou sou a cortana! Mas estou aqui para ajudar! Hi! I'm not the cortana! But I'm here to help!
    Se você gostou da minha resposta, marque como solução clicando em sim! If you liked my answer, mark it as a solution by clicking on yes!
    Aceite somente a resposta que ajudou a solucionar o seu problema! Please accept only the response that helped to solve your problem!
    Detection tool click here to find the serial number or partnumber of your model!                                                          

               
      egydiocoelho Trailblazer
     
    ProductKey clique aqui para descobrir o serial do windows! click here to discover the windows serial!
    Para usuários da comunidade inglesa, espanhola, francesa e alemã, usarei o google tradutor! :)
    For users of the English, Spanish, French and German community, I will be using google translator! :) 
  • MCer4294967296
    MCer4294967296 Member Posts: 2 New User
    Had a similar issue, motherboard Intel S5520HC, system Ubuntu. No idea why, cannot avoid, but worked around yesterday.

    Workaround: if you can manually add an EFI entry in your motherboard's BIOS, then when you do grub-install, add a --no-nvram flag. This will install grub onto your EFI partition, but it will not attempt to write to the nvram, as the flag indicates, and will not cause freeze. The EFI entry will be in this form:
    \EFI\GRUB\grubx64.efi
    , which means when you mount the EFI partition to /boot/efi, that same thing will be at
    /boot/efi/EFI/GRUB/grubx64.efi

    Story: so previously it worked well, except my fans are not reporting their speed to the OS. Therefore I decided to update my BIOS, which did not fix the fan issue, and a CMOS clear, which did not fix the fan issue, and wiped out my EFI entries in boot menu.
    And so I used EFI shell to boot into linux, did grub-install stuff, and it freezes. After some investigation, it is exactly the action of changing EFI entries that freezes the system. And after several other approaches including several live CD's of different distro, as well as Windows - all freeze.
    Nothing on the internet helped. Most of them is that Debian thread and the Acer thread.
    Then I see that --no-nvram flag, and it installed well, then I manually edited the EFI entry. Some more configurations to grub and /etc/fstab, and it finally worked.
  • It was great that you shared this solution!
    Oi! Eu não sou sou a cortana! Mas estou aqui para ajudar! Hi! I'm not the cortana! But I'm here to help!
    Se você gostou da minha resposta, marque como solução clicando em sim! If you liked my answer, mark it as a solution by clicking on yes!
    Aceite somente a resposta que ajudou a solucionar o seu problema! Please accept only the response that helped to solve your problem!
    Detection tool click here to find the serial number or partnumber of your model!                                                          

               
      egydiocoelho Trailblazer
     
    ProductKey clique aqui para descobrir o serial do windows! click here to discover the windows serial!
    Para usuários da comunidade inglesa, espanhola, francesa e alemã, usarei o google tradutor! :)
    For users of the English, Spanish, French and German community, I will be using google translator! :) 
  • MCer4294967296
    MCer4294967296 Member Posts: 2 New User
    I know thank you for reminding me that
  • linyerleo
    linyerleo Member Posts: 4 New User
    edited September 2020
    Hi!

    I had the same problem on other Acer model, the ES1 533. This guide should help you.

    I believe I'm the first one on the entire internet that will document the process to be able to install another linux distribution rather than a Debian-Based one in this particular (oh god es1 533 its particular) model. Just one thing: I will never buy another Acer model again. This is just a favor to the community. Its ridiculous how they don't even care to make a proper BIOS/UEFI solution.

    To make things clear:
    • Sadly, this is a solution just with GRUB2. It will solve 95% of your problems but if your intention is to NOT use GRUB2, this solution may not be exactly what you need.
    • I DO NOT know what would happen if you already have Windows installed. This is a clean Manjaro Linux installation.
    • YOU WILL NEED INTERNET CONNECTED.
    • My UEFI/BIOS version is 1.19. Remember, for the Acer ES1-533.

    Indeed, the 2 main problems that left out ALL automated installers on the distributions are:
    1. NRAM: When bootloaders install al the stuff they need to be able to be called by the UEFI system, they tend to write in the NRAM. In this model of Acer, accessing to NRAM through efibootmgr (Calamares and Ubiquity use this) FREEZE the system because the installers do it automatically. We need to NOT write in NRAM.
    2. boot file location and name: Almost all UEFI/BIOS systems search for some specific files on a predetermined direction... yet.. our little Acer model DO NOT. It's... you know.. special. You will understand this later.

    So... I downloaded Manjaro and of course y got the freeze at the moment of the installation of the bootloader. I thought there may be a way to install Manjaro WITHOUT the bootleader, just like the well known Debian-Ubuntu version of the problem. Well, it's not very clear but Calamares installer make things difficult, so my searches just got nothing.

    To the solution.

    1)

    I boot into the live usb of Manjaro, went to gparted (sudo gparted in terminal) and made the following partitions:

    • /dev/sda1    | fat32 |    | boot, esp |    |512mb|
    • /dev/sda2    | ext4  |    |                 |    | 120gb|
    • /dev/sda3    | ext4  |    |                 |    | 95gb|
    • /dev/sda4    | swap |   |                 |     | 8gb   |

    1. /dev/sda1 is the EFI partition, its filesystem is fat32, boot and esp are flags and 512MB is the size. YOU MUST HAVE THIS EXACTLY AS YOU SEE
    2. /dev/sda2 is my / partition. The place where the Manjaro System will go. You just need to be precise in the /dev/sda1 partition.
    /dev/sda3 and /dev/sda4 are optional. The first one is my /home partition and the second one is my swap partition. In the process they are not important.

    2)

    Open the Calamares Installer and select the "manual partition" option. Here, we just need to tell Calamares in which partitions we will install the totality of the system. AGAIN, for the EFI partition you MUST follow my steps:
    1. Edit the sda1 EFI partition and put the mount in /boot/efi.
    2. Put the boot flag and ONLY the boot flag.
    For the rest of the partitions just relate the mount points i.e /root and /home to sda2 and sda3, etc. DO NOT edit partition's sides INSIDE CALAMARES.

    Follow all the steps of Calamares installer (creation of the user, password, office suite, etc) and install...

    3)

    Oh no... installation froze again at the moment to install the bootloader.

    YES. We need that.

    • Reboot the computer (with the poweroff button, yes).
    • Boot into the live usb again.
    Here we are going to make some magic. Open the terminal and let's forze this hardware to embrace Linux.

    Type
    sudo su
    Mount the root partition first, in my case
    mount /dev/sda2 /mnt
    Make a new directory (you may already have this created but just in case)
    sudo mkdir /mnt/boot/efi
    Mount our problematic EFI partition. In my case, sda1 
    sudo mount /dev/sda1 /mnt/boot/efi

    Just type those commands, you can find what they do on Arch Wiki. Not big deal, really. The last one its SUPER IMPORTANT
    mount -t proc proc /mnt/proc
    mount -t sysfs sys /mnt/sys
    mount -o bind /dev /mnt/dev
    mount -t devpts pts /mnt/dev/pts/
    chroot /mnt
    Now, lets update the databases of Manjaro. We need to install some things. We DO NOT need to upgrade ALL the system's packages.
    sudo pacman -Syu
    Install the following packages
    sudo pacman -S mtools os-prober
    Make a new directory (you may already have this created but just in case) (this is kind of a repetition of a prior step)
    sudo mkdir /boot/efi
    NOW... the moment of true. We will install grub AGAIN.. it will not froze, relax.This is a custom command elaborated with the power of Arch Wiki and Ubuntu Forums.
    See the --no-vram option?. This attends our first main problem.
    sudo grub-install <b>--no-nvram</b> --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck

    Now...
    update-grub

    Okey... we are close to the final step. This is a combination of commands. Here we tell our lovely Acer that there is a new boot entry. This attends the second main problem.
    cp -R manjaro/* BOOT/
    <code>cd BOOT<br>cp grubx64.efi bootx64.eficd /boot/efi/EFI<br>sudo rm BOOT<br>sudo mkdir BOOT<br>

    Restart the system and access the boot menu again. You will see the Manjaro entry in your disc, maybe you will don't even need to access the boot menu ;) . All done.

    Some considerations

    • the BOOT file we delete in the last step it's definitely something related to Windows. Thats why those steps are recommended just for Linux-only setups.
    • sda1, sda2, etc are generic names. You can have others. See this
    • You can use other program to make partitions, gparted its the most "easy" way to do it.
    • At the moment we do
      chroot /mnt
    WE STAY ON THAT TERMINAL
    • English is not my first language.
    • Im not a Linux pro.
    • To anyone that have more knowledge than me, feel free to improve this "tutorial". Please.













  • linyerleo
    linyerleo Member Posts: 4 New User
    hi
    linyerleo said:
    Hi!

    I had the same problem on other Acer model, the ES1 533. This guide should help you.

    I believe I'm the first one on the entire internet that will document the process to be able to install another linux distribution rather than a Debian-Based one in this particular (oh god es1 533 its particular) model. Just one thing: I will never buy another Acer model again. This is just a favor to the community. Its ridiculous how they don't even care to make a proper BIOS/UEFI solution.

    To make things clear:
    • Sadly, this is a solution just with GRUB2. It will solve 95% of your problems but if your intention is to NOT use GRUB2, this solution may not be exactly what you need.
    • I DO NOT know what would happen if you already have Windows installed. This is a clean Manjaro Linux installation.
    • YOU WILL NEED INTERNET CONNECTED.
    • My UEFI/BIOS version is 1.19. Remember, for the Acer ES1-533.

    Indeed, the 2 main problems that left out ALL automated installers on the distributions are:
    1. NRAM: When bootloaders install al the stuff they need to be able to be called by the UEFI system, they tend to write in the NRAM. In this model of Acer, accessing to NRAM through efibootmgr (Calamares and Ubiquity use this) FREEZE the system because the installers do it automatically. We need to NOT write in NRAM.
    2. boot file location and name: Almost all UEFI/BIOS systems search for some specific files on a predetermined direction... yet.. our little Acer model DO NOT. It's... you know.. special. You will understand this later.

    So... I downloaded Manjaro and of course y got the freeze at the moment of the installation of the bootloader. I thought there may be a way to install Manjaro WITHOUT the bootleader, just like the well known Debian-Ubuntu version of the problem. Well, it's not very clear but Calamares installer make things difficult, so my searches just got nothing.

    To the solution.

    1)

    I boot into the live usb of Manjaro, went to gparted (sudo gparted in terminal) and made the following partitions:

    • /dev/sda1    | fat32 |    | boot, esp |    |512mb|
    • /dev/sda2    | ext4  |    |                 |    | 120gb|
    • /dev/sda3    | ext4  |    |                 |    | 95gb|
    • /dev/sda4    | swap |   |                 |     | 8gb   |

    1. /dev/sda1 is the EFI partition, its filesystem is fat32, boot and esp are flags and 512MB is the size. YOU MUST HAVE THIS EXACTLY AS YOU SEE
    2. /dev/sda2 is my / partition. The place where the Manjaro System will go. You just need to be precise in the /dev/sda1 partition.
    /dev/sda3 and /dev/sda4 are optional. The first one is my /home partition and the second one is my swap partition. In the process they are not important.

    2)

    Open the Calamares Installer and select the "manual partition" option. Here, we just need to tell Calamares in which partitions we will install the totality of the system. AGAIN, for the EFI partition you MUST follow my steps:
    1. Edit the sda1 EFI partition and put the mount in /boot/efi.
    2. Put the boot flag and ONLY the boot flag.
    For the rest of the partitions just relate the mount points i.e /root and /home to sda2 and sda3, etc. DO NOT edit partition's sides INSIDE CALAMARES.

    Follow all the steps of Calamares installer (creation of the user, password, office suite, etc) and install...

    3)

    Oh no... installation froze again at the moment to install the bootloader.

    YES. We need that.

    • Reboot the computer (with the poweroff button, yes).
    • Boot into the live usb again.
    Here we are going to make some magic. Open the terminal and let's forze this hardware to embrace Linux.

    Type
    sudo su
    Mount the root partition first, in my case
    mount /dev/sda2 /mnt
    Make a new directory (you may already have this created but just in case)
    sudo mkdir /mnt/boot/efi
    Mount our problematic EFI partition. In my case, sda1 
    sudo mount /dev/sda1 /mnt/boot/efi

    Just type those commands, you can find what they do on Arch Wiki. Not big deal, really. The last one its SUPER IMPORTANT
    mount -t proc proc /mnt/proc
    mount -t sysfs sys /mnt/sys
    mount -o bind /dev /mnt/dev
    mount -t devpts pts /mnt/dev/pts/
    chroot /mnt
    Now, lets update the databases of Manjaro. We need to install some things. We DO NOT need to upgrade ALL the system's packages.
    sudo pacman -Syu
    Install the following packages
    sudo pacman -S mtools os-prober
    Make a new directory (you may already have this created but just in case) (this is kind of a repetition of a prior step)
    sudo mkdir /boot/efi
    NOW... the moment of true. We will install grub AGAIN.. it will not froze, relax.This is a custom command elaborated with the power of Arch Wiki and Ubuntu Forums.
    See the --no-vram option?. This attends our first main problem.
    sudo grub-install <b>--no-nvram</b> --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=manjaro --recheck

    Now...
    update-grub

    Okey... we are close to the final step. This is a combination of commands. Here we tell our lovely Acer that there is a new boot entry. This attends the second main problem.
    cp -R manjaro/* BOOT/
    <code>cd BOOT<br>cp grubx64.efi bootx64.eficd /boot/efi/EFI<br>sudo rm BOOT<br>sudo mkdir BOOT<br>

    Restart the system and access the boot menu again. You will see the Manjaro entry in your disc, maybe you will don't even need to access the boot menu ;) . All done.

    Some considerations

    • the BOOT file we delete in the last step it's definitely something related to Windows. Thats why those steps are recommended just for Linux-only setups.
    • sda1, sda2, etc are generic names. You can have others. See this
    • You can use other program to make partitions, gparted its the most "easy" way to do it.
    • At the moment we do
      chroot /mnt
    WE STAY ON THAT TERMINAL
    • English is not my first language.
    • Im not a Linux pro.
    • To anyone that have more knowledge than me, feel free to improve this "tutorial". Please.


    For some reason, the code for the last step does not show correctly. This is the last final step of commands without format: 

    cd /boot/efi/EFI
    sudo rm BOOT
    sudo mkdir BOOT
    cp -R manjaro/* BOOT/
    cd BOOT
    cp grubx64.efi bootx64.efi







  • LepreTaunus
    LepreTaunus Member Posts: 1 New User
    Huge thanks to linyerleo !
    I struggled with this laptop for an entire day, looking everywhere for what the problem could be.
    I have no background knowledge on the issue with the efi implementation done by Acer here, but it definitely is
    warning to stay away from their machines if you want to install your an operating system yourself, other than the
    Windows install it shipped with.
    I'm really grateful for the instructions.

    My only addition would be, that this section:

    <code>cd BOOT<br>cp grubx64.efi bootx64.eficd /boot/efi/EFI<br>sudo rm BOOT<br>sudo mkdir BOOT<br>cp -R manjaro/* BOOT/
    was a bit unclear.
    What worked for me was:
    $ cd /boot/efi/EFI
    $ mkdir BOOT
    $ cp manjaro/* BOOT/
    $ cd BOOT/
    $ cp grubx64.efi bootx64.efi

    After that I could reboot and boot into manjaro. I think the basic structure of this workaround should also work
    for other distros. Only the package names of the packages that are installed here: 
    sudo pacman -S mtools os-prober
    and the name of the packagemanager will be different for another distro.
    The reinstall of grub with all the options mentioned and the copying I described above should mostly be the same (cp manjaro/* BOOT/ should also be different).

    Aaaah. Just now I saw the edited version with the correctly formatted commands... sorry :P
  • Kakaroto19
    Kakaroto19 Member Posts: 2 New User

    hello friend, I followed all the steps but when I turn on the machine it appears to me "no bootable service", need to enable again the HD as first option in the bios?? or did i do something wrong?

  • YEHIA199
    YEHIA199 Member Posts: 1 New User

    hi

    can this method work on endeavour os ? if it does should i type $ cp manjaro/* BOOT/ or type something else

    i am a linux beginner