• UEFI 32 bit with 64 bit processor installation / GRUB?


    It’s been 3 evenings trying different approaches to get to install Antergos minimal on my tablet with intel Z3735. Studied tons of documentations and ended up with that that bootloader systemd-boot doesn’t work with UEFI32bit. What does work is GRUB. And actually managed to get GRUB working on a tablet (boot from USB to GRUB commandline via bootia32.efi file). But I couldn’t manage to get installation process start. Anyone can help me or point what should I do? Below grub.cnf file I’ve prepared, but seems not even showing menus, not mentioning booting anything… (I managed to run manually kernel from grub)

    menuentry 'Antergos x86_64' --class arch --class gnu-linux --class os {
    	set root=(hd0,msdos1)
    	linux   /arch/boot/vmlinuz archisobasedir=arch archisolabel=ANTERGOS modules-load=loop rd.modules-load=loop udev.log-priority=crit rd.udev.log-priority=crit quiet splash
    	initrd  /arch/boot/intel_ucode.img
    	initrd  /arch/boot/archiso.img
    	boot
    }
    
    menuentry "Antergos x86_64 (Non-Graphical Fallback)" --class arch --class gnu-linux --class os {
    	set root=(hd0,msdos1)
    	linux   /arch/boot/vmlinuz archisobasedir=arch archisolabel=ANTERGOS modules-load=loop rd.modules-load=loop udev.log-priority=crit rd.udev.log-priority=crit systemd.unit=multi-user.target
    	initrd  /arch/boot/intel_ucode.img
    	initrd  /arch/boot/archiso.img
    	boot
    }
    
    menuentry "Firmware setup" {
    	fwsetup
    }
    

    I want to get rid of Windows from that tablet:

    MEDION AKOYA E123xT, Intel(R) Atom(TM) CPU  Z3735F @ 1.33GHz, 1329 MHz, BIOS MEDION B5CN18WW, 2014-10-29
    
  • Yes, unfortunately on my 64 bit ubuntu can not pass this step:

    grub-mkstandalone -d /usr/lib/grub/i386-efi/ -O i386-efi --modules="part_gpt part_msdos" --fonts="unicode" --locales="uk" --themes="" -o "/LOCATION/OF/bootia32.efi" "boot/grub/grub.cfg=/LOCATION/OF/grub.cfg" -v
    

    It produces:

    grub-mkstandalone: error: /usr/lib/grub/i386-efi/modinfo.sh doesn't exist. Please specify --target or --directory.
    
    
  • You need to replace /LOCATION/OF to what it should be.

  • @psscnp142
    I did it with proper paths, just copied here command from instruction. The thing is there is no such a directory as “/usr/lib/grub/i386-efi/modinfo.sh” on my 64 bit ubuntu system. And just installed qemu and then 32 bit ubuntu on it and there is also no such a directory too. There is only “/usr/lib/grub/i386-pc/modinfo.sh”.

    So I assume I can do it only on another 32 bit efi system. (I think i386-pc stands for old fashion BIOS based loading and what I need is i386-efi).

    That article explained me quite a lot: https://wiki.debian.org/UEFI. I think when having proper “bootia32.efi” and proper grub config file it should be enough to extract files to any regular usb stick, change partition name and boot installation from it. (please someone correct me if I’m wrong :-) )

    -=UPDATE=-
    Found package:
    sudo apt-get install grub-efi-ia32

    But it REMOVES 64bit efi (grub-efi-amd64)

  • I believe grub-mkstandalone needs some parameters from /usr/lib/grub/$platform.

    In general, arch packages are more generous. When you have grub installed in arch, you get files for all platforms. For ubuntu, this doesn’t seem like the case.

    In any case, arch linux will drop i686 support from this November an on. So, be aware setting up your device with i686 platform. I don’t know if antergos will make an extra effort to keep this platform going.

    https://www.archlinux.org/news/phasing-out-i686-support/

  • Finally got installer it working! (despite of something wrong with WiFi)

    This is my modified grub.cfg file for anyone who will possibly need it ;-)

    insmod part_gpt
    insmod part_msdos
    insmod fat
    insmod efi_gop
    insmod efi_uga
    insmod video_bochs
    insmod video_cirrus
    insmod font
    
    if loadfont "${prefix}/fonts/unicode.pf2" ; then
      insmod gfxterm
      set gfxmode="1024x768x32;auto"
      terminal_input console
      terminal_output gfxterm
    fi
    
    
    menuentry "Antergos Linux archiso x86_64" {
      set gfxpayload=keep
      search --no-floppy --set=root --label ANTERGOS
      linux /arch/boot/vmlinuz archisobasedir=arch archisolabel=ANTERGOS add_efi_memmap
      initrd /arch/boot/intel_ucode.img
      initrd /arch/boot/archiso.img
    }
    
    
    menuentry "UEFI Shell x86_64 v2" {
      search --no-floppy --set=root --label ANTERGOS
      chainloader /EFI/shellx64_v2.efi
    }
    
    
    menuentry "UEFI Shell x86_64 v1" {
      search --no-floppy --set=root --label ANTERGOS
      chainloader /EFI/shellx64_v1.efi
    }
    
    
  • I’m also trying to install it on a Bay Trail tablet. I’ve managed to install Arch and Ubuntu with a few commands from a script. Nothing too complicated.

    You just have to unpack the ISO, generate a standalone bootia32.efi, edit the grub.cfg and build it again.
    Thing is it’s not that easy to figure out the right flags for grub.cfg for every installer out there. You can find it for Arch on the wiki and for Ubuntu on forums. But for other distros, you are left to discover by trial and error.

    I just wanted to say that these tablets are quite popular and they are just waiting to be revived by Linux.
    Also they are not x86, they are x64 with 32-bit EFI.

uefi37 installation214 grub80 processor6 Posts 8Views 596
Log in to reply