I encountered this last week installing Ubuntu 22.04. I booted from USB install media and installed to a second attached USB storage device. I created an EFI system partition on the install target device, and specifically selected this EFI system partition in the GUI as the place to install the bootloader. However the bootloader was instead installed to the EFI system partition of the machine's internal SSD.
I reproduced the process running ubiquity from a terminal with the debug flag. The section of the logs that appears relevant is reproduced below. The logs show it fetching the debconf value and running "grub-install /dev/sdd1", which correctly reflects the partition I selected in the UI.
Based on documentation and various forum discussions I'm reading, my impression is that the device is specified as a parameter to the grub-install command (as Ubiquity seems to be doing here) for MBR installs and EFI installs work differently, requiring the target EFI system partition to be mounted on /boot/efi. Is this correct, and it possible Ubiquity is missing some unmount/remount steps here?
debconf (developer): <-- METAGET grub-installer/progress/step_bootdev description
debconf (developer): --> 1 Determining GRUB boot device...
May 7 21:22:29 debconf (filter): --> 0 OK
May 7 21:22:29 debconf (filter): <-- FGET grub-installer/bootdev seen
debconf (developer): <-- FGET grub-installer/bootdev seen
debconf (developer): --> 0 true
May 7 21:22:29 debconf (filter): <-- GET grub-installer/bootdev
debconf (developer): <-- GET grub-installer/bootdev
debconf (developer): --> 1 /dev/sdd1
May 7 21:22:29 debconf (filter): <-- PROGRESS STEP 1
May 7 21:22:29 debconf (filter): widget found for grub-installer/progress/title
May 7 21:22:29 debconf (filter): --> 0 OK
May 7 21:22:29 debconf (filter): <-- SUBST grub-installer/progress/step_install_loader BOOTDEV /dev/sdd1
debconf (developer): <-- SUBST grub-installer/progress/step_install_loader BOOTDEV /dev/sdd1
debconf (developer): --> 0
May 7 21:22:29 debconf (filter): <-- PROGRESS INFO grub-installer/progress/step_install_loader
May 7 21:22:29 debconf (filter): widget found for grub-installer/progress/title
debconf (developer): <-- METAGET grub-installer/progress/step_install_loader description
debconf (developer): --> 1 Running "grub-install /dev/sdd1"...
May 7 21:22:29 debconf (filter): --> 0 OK
May 7 21:22:29 debconf (filter): <-- INPUT low grub-installer/force-efi-extra-removable
debconf (developer): <-- METAGET grub-installer/force-efi-extra-removable Type
debconf (developer): --> 1 boolean
debconf (developer): <-- INPUT low grub-installer/force-efi-extra-removable
debconf (developer): --> 30 question skipped
May 7 21:22:29 debconf (filter): <-- GO
debconf (developer): <-- GO
debconf (developer): --> 0 ok
May 7 21:22:29 debconf (filter): <-- GET grub-installer/force-efi-extra-removable
debconf (developer): <-- GET grub-installer/force-efi-extra-removable
debconf (developer): --> 1 false
May 7 21:22:32 debconf (filter): <-- GET grub-installer/make_active
debconf (developer): <-- GET grub-installer/make_active
debconf (developer): --> 1 true
May 7 21:22:32 debconf (filter): <-- PROGRESS STEP 1
May 7 21:22:32 debconf (filter): widget found for grub-installer/progress/title
May 7 21:22:32 debconf (filter): --> 0 OK
May 7 21:22:32 debconf (filter): <-- PROGRESS INFO grub-installer/progress/step_config_loader
May 7 21:22:32 debconf (filter): widget found for grub-installer/progress/title
debconf (developer): <-- METAGET grub-installer/progress/step_config_loader description
debconf (developer): --> 1 Running "update-grub"...
I encountered this last week installing Ubuntu 22.04. I booted from USB install media and installed to a second attached USB storage device. I created an EFI system partition on the install target device, and specifically selected this EFI system partition in the GUI as the place to install the bootloader. However the bootloader was instead installed to the EFI system partition of the machine's internal SSD.
I reproduced the process running ubiquity from a terminal with the debug flag. The section of the logs that appears relevant is reproduced below. The logs show it fetching the debconf value and running "grub-install /dev/sdd1", which correctly reflects the partition I selected in the UI.
Based on documentation and various forum discussions I'm reading, my impression is that the device is specified as a parameter to the grub-install command (as Ubiquity seems to be doing here) for MBR installs and EFI installs work differently, requiring the target EFI system partition to be mounted on /boot/efi. Is this correct, and it possible Ubiquity is missing some unmount/remount steps here?
debconf (developer): <-- METAGET grub-installer/ progress/ step_bootdev description bootdev seen bootdev seen bootdev bootdev progress/ title progress/ step_install_ loader BOOTDEV /dev/sdd1 progress/ step_install_ loader BOOTDEV /dev/sdd1 progress/ step_install_ loader progress/ title progress/ step_install_ loader description force-efi- extra-removable force-efi- extra-removable Type force-efi- extra-removable force-efi- extra-removable force-efi- extra-removable make_active make_active progress/ title progress/ step_config_ loader progress/ title progress/ step_config_ loader description
debconf (developer): --> 1 Determining GRUB boot device...
May 7 21:22:29 debconf (filter): --> 0 OK
May 7 21:22:29 debconf (filter): <-- FGET grub-installer/
debconf (developer): <-- FGET grub-installer/
debconf (developer): --> 0 true
May 7 21:22:29 debconf (filter): <-- GET grub-installer/
debconf (developer): <-- GET grub-installer/
debconf (developer): --> 1 /dev/sdd1
May 7 21:22:29 debconf (filter): <-- PROGRESS STEP 1
May 7 21:22:29 debconf (filter): widget found for grub-installer/
May 7 21:22:29 debconf (filter): --> 0 OK
May 7 21:22:29 debconf (filter): <-- SUBST grub-installer/
debconf (developer): <-- SUBST grub-installer/
debconf (developer): --> 0
May 7 21:22:29 debconf (filter): <-- PROGRESS INFO grub-installer/
May 7 21:22:29 debconf (filter): widget found for grub-installer/
debconf (developer): <-- METAGET grub-installer/
debconf (developer): --> 1 Running "grub-install /dev/sdd1"...
May 7 21:22:29 debconf (filter): --> 0 OK
May 7 21:22:29 debconf (filter): <-- INPUT low grub-installer/
debconf (developer): <-- METAGET grub-installer/
debconf (developer): --> 1 boolean
debconf (developer): <-- INPUT low grub-installer/
debconf (developer): --> 30 question skipped
May 7 21:22:29 debconf (filter): <-- GO
debconf (developer): <-- GO
debconf (developer): --> 0 ok
May 7 21:22:29 debconf (filter): <-- GET grub-installer/
debconf (developer): <-- GET grub-installer/
debconf (developer): --> 1 false
May 7 21:22:32 debconf (filter): <-- GET grub-installer/
debconf (developer): <-- GET grub-installer/
debconf (developer): --> 1 true
May 7 21:22:32 debconf (filter): <-- PROGRESS STEP 1
May 7 21:22:32 debconf (filter): widget found for grub-installer/
May 7 21:22:32 debconf (filter): --> 0 OK
May 7 21:22:32 debconf (filter): <-- PROGRESS INFO grub-installer/
May 7 21:22:32 debconf (filter): widget found for grub-installer/
debconf (developer): <-- METAGET grub-installer/
debconf (developer): --> 1 Running "update-grub"...