Is the EFI directory a mandatory part of the EFI standard or can bootloaders be placed in other directories.
I'm contemplating moving my whole /boot
over to the ESP partition (ensuring I have a large enough ESP partition). Now Debian based distributions (and others) have scripts which expect the ESP directory mounted at /boot/efi/
putting the EFI directory hard coded at /boot/efi/EFI
.
So I see two options to work with this:
- Mount ESP to
/boot
and then bind mount/boot/EFI
to/boot/efi/EFI
to satisfy the OS scripts.
This needs both anefi
and anEFI
directory on a FAT32 formatted partition so I'm not entirely happy about doing this. - Install the bootloader to
/efi/EFI
on the ESP partition and tell the bios to took elsewhere for the bootloader (eg:/efi/EFI/ubuntu/grubx64.efi
)
What I don't know is whether or not the EFI directory is a mandatory part of the specification, if I'm likely to get problems in my BIOS or if I can just safely move it.
/boot
must be linux formatted from? From what I understand/boot
is read by the bootloader only. EFI on the BIOS loads the boot loader, the bootloader loads the kernel and initramfs from/boot
beyond that they are only mounted so that linux can manage their contents when it changes boot configuration (eg installing a new kernel). – Philip Couling May 20 '21 at 16:24/boot
directory is written by Linux when the kernel is updated. Some distros may not be happy with a FAT32 formatted/boot
directory. – Johan Myréen May 20 '21 at 16:31and it must be Linux formatted to support ownership & permissions
where do you get this from? It's not instantly obvious from it's purpose that any of that is needed. Is it mentioned in posix, the filesystem hierarchy standard or any linux kernel documentation? Just being mentioned in FHS doesn't instantly infer any such requirements. – Philip Couling May 20 '21 at 20:35