#1203 PR closed: Enhancement: find 64-bit systemd UEFI bootloader

Labels: enhancement, fixed / solved / done

ProBackup-nl opened issue at 2017-02-22 21:35:

As seen on UEFI 64-bit Arch Linux distributions with efibootmgr package installed.
Upon "bootctl install" the .efi files are:
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/boot/EFI/systemd/systemd-bootx64.efi".
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/boot/EFI/BOOT/BOOTX64.EFI".

ProBackup-nl commented at 2017-02-22 21:44:

There might be a logic error here. The UEFI boot will not be able to find /boot/EFI/systemd/ unless explicitly defined (using bootctl) in EFIVARS. Because the efivars is already checked, it is unlikely that code processing will arrive here. It is more likely that the system is booted using the UEFI default/boot/EFI/BOOT/ location, using file BOOTX64.EFI. I should close and improve this patch.

gozora commented at 2017-02-22 22:35:

Hmm, so it is not shifted, but whole /boot is on vfat, interesting.
I'm a bit concerned about this, as ReaR quite relies on /boot/efi path.

E.g.
310_include_uefi_tools.sh

# next step, is checking /boot/efi directory (we need it)
if [[ ! -d /boot/efi ]]; then
    return    # must be mounted
fi

REQUIRED_PROGS=( "${REQUIRED_PROGS[@]}"
dosfsck
efibootmgr
)

PROGS=( "${PROGS[@]}"
gdisk
parted
uefivars
)

I'll install Arch tomorrow and check for possible pitfalls.

ProBackup-nl commented at 2017-02-22 23:24:

One of the pitfalls on mkrescue is:

BUG in /root/rear/usr/share/rear/output/USB/Linux-i386/100_create_efiboot.sh:
'Unknown EFI bootloader'

Trace 4: /root/rear/usr/share/rear/output/USB/Linux-i386/100_create_efiboot.sh:117 source

ProBackup-nl commented at 2017-02-22 23:39:

There seems some work to be done at 100_create_efiboot.sh to support the systemd-boot loader.conf

jsmeix commented at 2017-03-02 08:59:

This one is "fixed/solved/done" via its successor
https://github.com/rear/rear/pull/1204


[Export of Github issue for rear/rear.]