Ubuntu 18 and 20 server, x86_64 mender convertion

Description

IPC4-BXPC-C10 x86_64 computer.

I used this post as tutorial and there is no difference about config.

Problem: Device does not boot after mender convert .img flashed to it.

image

Device seen in bootable device list as “Legacy Boot device”. But in fdisk output device seen “EFI”.

I try to use golden image without mender convert, and write image to device, device boot succesfully. So it seems golden image is OK.

Thank you

Yeah, I think we have only tested in this in EFI mode. Legacy mode may need some additional work. @MarekBelisko do you have any ideas here?

@Furkan is your platform capable of EFI booting?

Drew

@drewmoseley I’m in contact with @Furkan already and we find out the same. I never tested non EFI so could be that it’s not working.

Yes, my HW is capable for UEFI, and also golden image taken from UEFI. But after re-write to device, it returns legacy.

Thank you

We tried to boot also mkosi genared imge from here: https://d1b0l86ne08fsf.cloudfront.net/mender-convert/images/Ubuntu-Bionic-x86-64.img.gz (used for qemu) but it was also not working. @Furkan can you maybe try install ubuntu then run live from usb and fdisk -l /dev/sda? It should show first partition as EFI. If not then it’s legacy and we didn’t have support for that yet. Thanks.

It is seen as EFI.

Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 3B4BAD4E-D5CB-5F40-B03D-7BBF5F306C3E

Device                     Start     End Sectors  Size Type
/dev/sda1   2048  526335  524288  256M EFI System
/dev/sda2 526336 4434600 3908265  6G Linux root (x86-64)

I changed size of /data and /root partitons, and something happened. After reboot device entering UEFI shell. In boot list only seen UEFI shell. If I enter “exit” to UEFI shell twice, device do boot and Ubuntu works. I try a few more times, all same thing happened.

1 Like

I try with Debian. Mender successfully install to image. But when I deploy img to device, every boot device enter to EFI shell. After wait a few seconds and enter “exit” to EFI shell, device boot successfull and mender works fine. How can I solve to device boot directly?
Thanks

Sounds like maybe the device naming is not correct in your build. It seems to be unable to locate the GRUB binary. What are the file contents on the FAT/EFI partition of your image?

/EFI/BOOT folder has BOOTX64.EFI, fbx64.efi, grub.cfg, mender_grubenv1, mender_grubenv2.
/EFI/ubuntu/ folder has BOOTX64.CSV, grub.cfg, grubx64.efi, mmx64.efi, shimx64.efi.

Hmm. Are you using EFI secure boot? You have shim and such installed from Ubuntu.

It seems that your EFI loader doesn’t like something about the format of the EFI partition. Hard to say what it might be. @MarekBelisko do you have any ideas?

No I am not using secure boot.