Using Manjaro 21.1.6 (GNOME) in EFI boot mode, I cannot select /boot as a mountpoint when partitioning manually. The option simply does not exist in the drop-down list, and I can’t enter it manually either (gets reset to no mount point). Only /boot/efi is listed.
If I boot in legacy boot mode, the /boot option exists (and /boot/efi is gone, obviously). I do want to use EFI boot mode with separate EFI system partition and boot partition though, for the following reasons:
Windows is already installed on the disk, I want to install Manjaro next to it
Therefore, an EFI system partition already exists, but it is only 99 MiB in size (no, I cannot resize it).
How do I create a /boot partition?
[On a related note, I cannot use LVM, since the installer just closes when attempting to create a logical volume]
Not sure if it’s by design, but there’s no reason to dedicate a separate partition to /boot, unless you’re using encryption and wish to leave /bootnon-encrypted for faster unlocks at boot time. (Grub’s EFI loader vs the actual kernel decrypting the root partition.)
Agreed. That’s why I’m questioning if it’s a design decision. The way it was described sounds like it’s intentional by the Calamares team, and I presume it might be for the above reason (i.e, no need to spare extra allocated space for a separate /boot partition).
Even using the default “Erase everything + encryption” method in Calamares, it does not create a separate /boot partition.
Not with the automatic partitioning, no, but OP has indicated that they are attempting a manual partitioning. And then it should be possible to create as many partitions as possible and mount them wherever one sees fit ─ except for /etc of course, because that one needs to live on the root filesystem.
I do want to use encryption, yes. (Ideally LVM > LUKS > ext4, but due to the installer closing when attempting to create a logical volume I settled for just LUKS > ext4 instead).
The missing /boot problem is orthogonal though - it also appears when attempting to create the boot partition first.
If possible, I would also be happy with leaving /boot on the encrypted root partition, but it seems like the installer wants to store the boot partition’s content in the EFI system partition instead, for which I simply do not have enough space. (Also I was not sure how well systems with an encrypted boot partition are supported)
It works. You’ll notice a delay for unlocking the root partition because there is no hardware acceleration for AES when Grub’s EFI loader tries to decrypt the Master Key of your LUKS-encrypted root partition.
Did you by any chance select rEFInd as the boot loader? In that case, the kernels will indeed be added to the EFI partition, and then the EFI partition must itself be mounted as /boot. But with GRUB as the boot loader, the kernels and the main portion of GRUB will be installed under /boot, which is separate from the EFI partition.
No, I did not get to a boot loader selection. I tried to continue without setting the /boot mountpoint, but then the installer complained that the EFI system partition should be at least 300 MiB large - and the only explanation for that, in my mind, is that it tries to store the kernels etc. on the EFI system partition directly. I mean, the EFI boot entry should only occupy a few KiB, so the size recommendation would not make any sense.
You can ignore that warning. The 300 MiB warning is indeed for when you use rEFInd. In practice, with GRUB as the boot loader, your EFI partition will be nearly empty.
My own EFI system partition is only 100MiB, with no issues. They really need to clarify that “warning”. There’s already a bug report against it.
EDIT: Not just rEFIind, but also systemd-boot requires the kernels and initramfs’es to be housed in the EFI system partition if using an encrypted root and/or boot partition(s).
First select /boot/efi from the drop-down list, and then Backspace until you remove the /efi portion, then hit Enter.
It works, for some reason!
Make sure to do it as the last step for creating that partition. Select your size and filesystem first, and then do the above steps.
EDIT: I didn’t actually try to commit to an installation, so I’m not sure if it will crash Calamares during the stages when it actually commits to partitioning and installing the packages.