Skip to content

bootctl status produces a Bad syntax warning about boot entries containing tabs instead of spaces #8154

@woohooyeah

Description

@woohooyeah

bootctl status produces a Bad syntax warning about boot entries with multiple initrd lines.
Edit: the warning turns out to be about using tabs instead of spaces.

$ bootctl --version
systemd 237
+PAM -AUDIT -SELINUX -IMA -APPARMOR +SMACK -SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN +PCRE2 default-hierarchy=hybrid

$ bootctl status 
System:
     Firmware: UEFI 2.xx (American Megatrends 4.xxx)
  Secure Boot: disabled
   Setup Mode: setup

Current Loader:
      Product: systemd-boot 237
          ESP: /dev/disk/by-partuuid/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
         File: └─/EFI/systemd/systemd-bootx64.efi

Boot Loader Binaries:
          ESP: /boot (/dev/disk/by-partuuid/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
         File: └─/EFI/systemd/systemd-bootx64.efi (systemd-boot 237)
         File: └─/EFI/BOOT/BOOTX64.EFI (systemd-boot 237)

Boot Loader Entries in EFI Variables:
        Title: Linux Boot Manager
           ID: 0x0000
       Status: active, boot-order
    Partition: /dev/disk/by-partuuid/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
         File: └─/EFI/systemd/systemd-bootx64.efi

Default Boot Entry:
/boot/loader/entries/archlinux-lts.conf:4: Bad syntax
/boot/loader/entries/archlinux.conf:4: Bad syntax
/boot/loader/entries/archlinux_fsck.conf:4: Bad syntax
        title: Arch Linux (archlinux)
        linux: /vmlinuz-linux
       initrd: /initramfs-linux.img
      options: root=PARTUUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rootfstype=ext4 rw add_efi_memmap intel_iommu=on intremap=no_x2apic_optout nvidia-drm.modeset=1

It fails to display the first initrd line, it displays only the last one.

I'm using entries like this:

$ cat /boot/loader/entries/archlinux.conf
title   Arch Linux (archlinux)
linux   /vmlinuz-linux
initrd  /intel-ucode.img
initrd  /initramfs-linux.img
options root=PARTUUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rootfstype=ext4 rw add_efi_memmap intel_iommu=on intremap=no_x2apic_optout nvidia-drm.modeset=1

It doesn't complain about my other entries like this:

$ cat /boot/loader/entries/4.15.2-gentoo.conf 
title   Gentoo Linux (4.15.2-gentoo)
linux   /vmlinuz-4.15.2-gentoo
initrd  /initramfs-genkernel-x86_64-4.15.2-gentoo
options root=UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rootfstype=ext4 rw add_efi_memmap intel_iommu=on intremap=no_x2apic_optout nvidia-drm=1

I think it could be fixed in this if-statement. The code involved was added with this commit.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions