I am trying to install Ubuntu Server 18.04 on a pair of 128GB SSDs in RAID1. I followed the "advanced installation" instructions on the Ubuntu help site: https://help.ubuntu.com/lts/serverguide/advanced-installation.html
It seems to have gone well in that when I boot with Gparted I can see the RAID volume and it looks like I expect it to (two drives two partitions each), I cannot see the drives in BIOS (and the installer said that in completed successfully).
Based on other threads, (such as How to install Ubuntu 14.04/16.04 64-bit with a dual-boot RAID 1 partition on an UEFI/GPT system? ) I understand that there needs to be a boot partition, but I thought that was the point of the "boot flag" option that I picked for the partitions that I want to install on. Since the instructions tell me create a new partition table and explicitly tell me to make swap and install partitions, I did not manually create a boot partition prior to creating the swap partition. Because if I was supposed to make a boot partition, they would have told me to make a partition of a few hundred Mb after creating the partition table and before creating the swap partition, right?
Is there something missing from the instructions or am I missing something? I am going to destroy my RAID volume and restart the installation, doing what I just suggested and will report back. But the documentation seems so thorough, could that really have been left out?
Since you have disks that are smaller than 2 TB the default installer will use MBR partitioning scheme with the partitions starting at offset 1 MB from the start of the disk. The
grub
will be then installed between the MBR and the start of the data partition. The around 1 MB of disk space is needed to contain the minimal disk drivers grub uses to read the boot image over software RAID. (If I remember correctly, the most complex setup the grub is able to boot is software RAID6 on GPT partitions over several disks, where that RAID contains LVM volume having an LUKS encrypted partition containing a BTRFS file system. For that case, the grub must have drivers to locate all required devices for the RAID, assemble RAID devices, detect a correct LVM volume, ask for LUKS password, mount the BTRFS file system and load the kernel and initrd to complete the boot. And the RAID assemble will be pretty hard but possible if you're missing two data disks...)If, on the other hand, the disks were bigger than 2 TB (the maximum disk size for MBR partitioning method due historical reasons), the installer will automatically switch to GPT partitioning which does not have any safe-to-use area for grub by default. In case of GPT you must have BIOS reserved GPT partition (1 MB is big enough) to have space for grub. Sadly, the Ubuntu installer does not tell you if it's using GPT or MBR partitioning scheme so you basically need to guess which way the system is going to be installed.
If you use UEFI you need an EFI system partition instead and then grub will be installed as a file on the EFI system partition. Technically EFI system partition is just a FAT32 filesystem with special UUID
C12A7328-F81F-11D2-BA4B-00A0C93EC93B
for the partition. For additional details, see Wikipedia page about EFI system partition.Hahahaha it turns out nothing was wrong at all. If I had just waited for it to boot instead of going into bios, I would have seen that it starts up just fine. I am still confused by the fact that I'm able to boot from a device that doesn't even show in the boot menu but OK. Like so many times using Linux, I spent hours trying to "solve" a problem that had already been solved.