I'm trying to setup a Ubuntu 19.10 server using software RAID-5. I have a small NVMe drive and six 12TB NAS drives. The six NAS drives are connected to a SATA HBA because my mobo doesn't have enough free SATA ports.
During the install I partitioned each NAS drive and add eac partition to the RAID-5 array. I then created a LVM volume group and added the MD0 device. Then I created a logical drive for the root filesystem formatted it as BTRFS. I then make the NVMe bootable so the /boot/efi partition is on the NVMe drive. The installer finishes with no errors but after I reboot it always boots to the GRUB shell. Even if I hit the F12 key and pick Ubuntu EFI entry it still ends up at the GRUB shell.
I've booted with a LiveCD, chrooted and reran the grub-installer and it still continues to boot to the GRUB shell.
I know this should work because I setup a Hyper-V VM on my laptop and using the exact same installer configuration it works flawlessly.
So I'm deducing that since I'm ending up at the GRUB shell the bootloader can't find my /boot partition on the array so I reran the Ubuntu installer again, did a fresh install but this time I put the /boot and a /boot/efi partitions on the NVMe drive and now it boots up.
What is the reason why I have to put the /boot partition on a non-array drive on my physical PC but it works in a Hyper-V VM?