hetzneronline/installimage

On RX220 installimage does not create /boot/efi esp partition as raid1

compiaffe opened this issue · 3 comments

When installing Ubuntu 22.04 on an RX220 we specify the partitions as such:

PART /boot/efi esp 256M
PART /boot ext3 1024M
PART lvm vg0 all

LV vg0 tmp /tmp reiserfs 20G
LV vg0 log /var/log ext4 30G
LV vg0 swap swap swap 10G
LV vg0 root / ext4 3200G
LV vg0 home /home ext4 300G

However, only /dev/md0 and /dev/md1 are being created. The size of them matches the /boot and lvm partitions. When installing on an AX101 with the same settings there were three /dev/mdx devices. The two mentioned above and another one matching the /boot/efi partition.

On the RX220 lsblk reports:

NAME           MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
loop0            7:0    0  3.3G  1 loop
nvme1n1        259:0    0  3.5T  0 disk
├─nvme1n1p1    259:5    0    1G  0 part
│ └─md0          9:0    0 1022M  0 raid1
├─nvme1n1p2    259:6    0  256M  0 part
└─nvme1n1p3    259:8    0  3.5T  0 part
  └─md1          9:1    0  3.5T  0 raid1
    ├─vg0-tmp  253:0    0   20G  0 lvm
    ├─vg0-log  253:1    0   30G  0 lvm
    ├─vg0-swap 253:2    0   10G  0 lvm
    ├─vg0-root 253:3    0  3.1T  0 lvm
    └─vg0-home 253:4    0  300G  0 lvm
nvme0n1        259:1    0  3.5T  0 disk
├─nvme0n1p1    259:2    0    1G  0 part
│ └─md0          9:0    0 1022M  0 raid1
├─nvme0n1p2    259:3    0  256M  0 part
└─nvme0n1p3    259:4    0  3.5T  0 part
  └─md1          9:1    0  3.5T  0 raid1
    ├─vg0-tmp  253:0    0   20G  0 lvm
    ├─vg0-log  253:1    0   30G  0 lvm
    ├─vg0-swap 253:2    0   10G  0 lvm
    ├─vg0-root 253:3    0  3.1T  0 lvm
    └─vg0-home 253:4    0  300G  0 lvm

Ubuntu 22.04 has support for multiple ESPs and we have added this to installimage.
Previously we have used the RAID1 metadata 1.0 method, but this is a convenience workaround and not supported by the UEFI standard.

Fair enough. In that case the AX101 installimage for Ubuntu 22.04 seems to be out of date. Here the RAID1 method is still used:

lsblk
NAME             MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
nvme1n1          259:0    0   3.5T  0 disk
├─nvme1n1p1      259:6    0   256M  0 part
│ └─md0            9:0    0 255.9M  0 raid1 /boot/efi
├─nvme1n1p2      259:7    0   512M  0 part
│ └─md1            9:1    0   511M  0 raid1 /boot
├─nvme1n1p3      259:8    0   3.5T  0 part
│ └─md2            9:2    0   3.5T  0 raid1
│   └─cryptroot  253:0    0   3.5T  0 crypt
│     ├─vg0-tmp  253:1    0    20G  0 lvm   /tmp
│     ├─vg0-log  253:2    0    30G  0 lvm   /log
│     ├─vg0-swap 253:3    0    10G  0 lvm   [SWAP]
│     ├─vg0-root 253:4    0     3T  0 lvm   /
│     └─vg0-home 253:5    0 315.1G  0 lvm   /home
└─nvme1n1p4      259:9    0     1M  0 part
nvme0n1          259:1    0   3.5T  0 disk
├─nvme0n1p1      259:2    0   256M  0 part
│ └─md0            9:0    0 255.9M  0 raid1 /boot/efi
├─nvme0n1p2      259:3    0   512M  0 part
│ └─md1            9:1    0   511M  0 raid1 /boot
├─nvme0n1p3      259:4    0   3.5T  0 part
│ └─md2            9:2    0   3.5T  0 raid1
│   └─cryptroot  253:0    0   3.5T  0 crypt
│     ├─vg0-tmp  253:1    0    20G  0 lvm   /tmp
│     ├─vg0-log  253:2    0    30G  0 lvm   /log
│     ├─vg0-swap 253:3    0    10G  0 lvm   [SWAP]
│     ├─vg0-root 253:4    0     3T  0 lvm   /
│     └─vg0-home 253:5    0 315.1G  0 lvm   /home
└─nvme0n1p4      259:5    0     1M  0 part

The code is the same for all systems, but the AX101 does not use UEFI by default, hence the condition is not triggered:
https://github.com/hetzneronline/installimage/blob/master/functions.sh#L1836