I have a 2017 iMac and am trying to install Ubuntu on an external USB3 drive. The external drive has a GPT partition table (no hybrid MBR) and is partitioned like so:
/dev/sda1: EFI partition /dev/sda2: Windows-To-Go partition /dev/sda3: ext4 Linux boot partition /dev/sda4: LUKS / LVM partition /dev/sda5: extra partition, not currently being used
The LVM group that's available once the LUKS partition is decrypted contains an ext4 partition intended to be the main partition for my linux system, and a swap partition.
I'm using refind on my mac to facilitate booting these different operating systems.
When I installed Ubuntu, I made sure all of my partitions were already decrypted and mounted, I picked manual disk setup in the installer (as I didn't want it to blow away my whole external disk including the Windows installation) and manually specified the following:
/bootas the mount point for
/as the mount point for the main ext4 partition in my LVM group
- grub should be installed to
The installer finished without errors. When I reboot, however, I have two options for how to boot this Ubuntu installation, and neither one works.
I can boot from a grub bootloader installed in the EFI partition of my internal hard drive. Note that I did not want Linux or any other operating system adding their bootloader to this drive. I just want it to remain a normal macOS drive with the addition of refind. Nonetheless, if I boot from it using refind, it shows the Ubuntu logo before dropping me to an
(initramfs) prompt with no error messages at all.
If I pick the bootloader I specified should be installed to
/dev/sda3, it starts loading, fails with the following errors:
mount: can't find /root in /etc/fstab ... mount: mounting /dev on /root/dev failed: No such file or directory mount: mounting /run on /root/run failed: No such file or directory run-init: current directory on the same filesystem as the root: error 0 Target file system doesn't have requested /sbin/init run-init: current directory on the same filesystem as the root: error 0 (repeats four more times) No init found. Try passing init= bootarg.
...and then drops me to a
I have no idea how to fix this! I tried using Boot-Repair but it made no difference at all. Help!