danboid / ALEZ

Arch Linux Easy ZFS installer
GNU General Public License v3.0
145 stars 25 forks source link

systemd-boot not installing correctly #58

Open liljenstolpe opened 4 years ago

liljenstolpe commented 4 years ago

I have tried installing systemd-boot on a msata drive in a UEFI setup, and using both the April and May released, I get an immediate failure "can't find new_root" I have mounted the install using the usb drive, done the chroot to /mnt, and run bootcli. The following is the result:

systemd-boot not installed in ESP.
No default/fallback boot loader installed in ESP.
System:
     Firmware: UEFI 2.31 (American Megatrends 4.653)
  Secure Boot: disabled
   Setup Mode: setup

Current Boot Loader:
      Product: systemd-boot 245.4-1-arch
     Features: ✓ Boot counting
               ✓ Menu timeout control
               ✓ One-shot menu timeout control
               ✓ Default entry control
               ✓ One-shot entry control
               ✓ Support for XBOOTLDR partition
               ✓ Support for passing random seed to OS
               ✗ Boot loader sets ESP partition information
          ESP: n/a
         File: └─/EFI/BOOT/loader.efi

Random Seed:
 Passed to OS: no
 System Token: set
       Exists: no

Available Boot Loaders on ESP:
          ESP: /boot (/dev/disk/by-partuuid/3c1824db-12d3-4300-8af3-df261986ff49)

Boot Loaders Listed in EFI Variables:
        Title: Linux Boot Manager
           ID: 0x0003
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/3c1824db-12d3-4300-8af3-df261986ff49
         File: └─/EFI/systemd/systemd-bootx64.efi

Boot Loader Entries:
        $BOOT: /boot (/dev/disk/by-partuuid/3c1824db-12d3-4300-8af3-df261986ff49)

0 entries, no entry could be determined as default.
johnramsden commented 4 years ago

Because we've installed to a non-standard location you will need to use:

bootctl --path=/mnt/efi

That doesn't explain why it's not booting, but it could explain the unexpected output.


I will run through a test install and see if I can reproduce.

johnramsden commented 4 years ago

I'm able to reproduce this. There seems to be a silent failure that isn't treated as an error and claims the install was successful at https://github.com/danboid/ALEZ/blob/99416250ff1b3222becb08561fcd7cdb88e080b5/alez.sh#L249

I will let you know once I find the cause and a fix.

johnramsden commented 4 years ago

@liljenstolpe I believe the error was due to the archzfs key not being fetched correctly, causing the refreshing of mirrorlists to fail.

I made a few changes that seemed to fix the issue for me. And I was able to successfully boot without the error. Could you see if archlinux-alez-2020.05.16.21.10.31-test works for you? It is an ISO with the changes.

Once you confirm the fix I will push the changes to master and create a new release.

liljenstolpe commented 4 years ago

I will do an install test in a day or two - need to stand up a test drive on the machine. If you don't hear from me by Friday, COB - please ping.

liljenstolpe commented 4 years ago

Ok, I just tried that image. I get a bail out with a WARNING message right after I select start the install. that really doesn't say anything. The /mnt/mnt/efi stays mounted.

Here are two images of snapshots of the journalctl output, which may, or may not help.

There are complaints about no user ID for a pgp key signature. Maybe still having problems with the keyring update?

IMG_20200521_153035 IMG_20200521_153109

johnramsden commented 4 years ago

Strange... Can you try running:

bash -x alez 2> alez.log

And then upload the log.

johnramsden commented 4 years ago

I made a new release anyways since it fixes other unrelated bugs. Should be identical to the test image, but if you'd rather test with the new release its available at archlinux-alez-2020.05.23.22.38.22.

liljenstolpe commented 4 years ago

I'll do so once I get a spare disk in the system.