OL8 ova templates having problem with booting OVA images

15 views
Skip to first unread message

Rinku Rajole

unread,
Apr 13, 2026, 6:38:38 AM (10 days ago) Apr 13
to kiwi
I've created Oracle Linux 8 OVA template using Kiwi-ng version 10.2.3. I'm able to build OVA template which are booting with Legacy BIOS boot in VSphere but failing to boot with UEFI (with & without secure boot). Getting the below messages once VM is powered on

Attempting to start up from:
-> EFI Virtual disk (0.0)... No compatible bootloader found.
-> EFI Floppy... No Media.
-> EFI Network...

My build VM is running OL9 with kiwi ng version 10.2.3 and VMware ovftool 5.0.0 (build-24781994)
Trying to create VM from OVA on Vsphere with Compatibility - ESXi 8.0 U2 and later (VM version 21)
Below is my config for VM profile

<preferences profiles="Virtual">
        <!-- firmware="uefi": KIWI runs shim-install; OL8 has no stock shim-install — root/usr/sbin/shim-install copies shimx64→BOOTX64.EFI + grubx64.efi to EFI/BOOT/ and writes a redirect grub.cfg that chainloads /boot/grub2/grub.cfg from the boot partition. eficsm="false" disables legacy CSM. -->
        <type image="oem" filesystem="xfs" initrd_system="dracut" firmware="uefi" format="ova" eficsm="false"
            installiso="false" bootpartition="true" bootpartsize="1024" efipartsize="500"
            kernelcmdline="root=/dev/mapper/vg.sys.2-LVRoot crashkernel=auto biosdevname=0 ipv6.disable=1 net.ifnames=0 transparent_hugepage=always audit=1">

            <bootloader name="grub2" console="console" timeout="10" />

            <!-- Required for format=ova: KIWI calls get_ovftype() on the machine section; omitting <machine> causes NoneType on older KIWI. -->
            <size unit="G">512</size>
            <machine memory="8192" ncpus="2" guestOS="oracleLinux8_64Guest" HWversion="21" ovftype="vmware">
                <vmdisk id="0" controller="lsilogic"/>
                <vmnic driver="vmxnet3" interface="0" mode="bridged"/>
                <!-- VMX lines; ovftool may omit firmware in OVF — run patch-ovf-vmware-firmware.py on the OVA before vCenter upload. -->
                <vmconfig-entry>firmware = "efi"</vmconfig-entry>
                <vmconfig-entry>uefi.secureBoot.enabled = "TRUE"</vmconfig-entry>
            </machine>

            <oemconfig>
                <oem-unattended>true</oem-unattended>
                <oem-swap>false</oem-swap>
                <oem-resize>false</oem-resize>
            </oemconfig>

            <systemdisk name="vg.sys.2" preferlvm="true">
                <volume name="@root" size="8G" mountpoint="/" />
                <volume name="lv.usr.0" size="12G" mountpoint="/usr" />
                <volume name="lv.var.0" size="400G" mountpoint="/var" />
                <volume name="lv.tmp.0" size="10G" mountpoint="/tmp" />
                <volume name="lv.opt.0" size="32G" mountpoint="/opt" />
                <volume name="lv.var.log.0" size="30G" mountpoint="/var/log" />
                <volume name="lv.var.log.audit.0" size="4G" mountpoint="/var/log/audit" />
            </systemdisk>
        </type>
    </preferences>

Can you please review and suggest what can be wrong here? Let me know if any more details are required. Thank You!


Marcus Schäfer

unread,
Apr 13, 2026, 9:23:58 AM (10 days ago) Apr 13
to 'Rinku Rajole' via kiwi
Hi,

> I've created Oracle Linux 8 OVA template using Kiwi-ng version 10.2.3.
> I'm able to build OVA template which are booting with Legacy BIOS boot
> in VSphere but failing to boot with UEFI (with & without secure boot).
> Getting the below messages once VM is powered on

I can't tell much about VSphere but we recently changed the way
how we build OVA images. For details see:

https://github.com/OSInside/kiwi/pull/2933

With this change we no longer use the proprietary ovftool but the open-vmdk
project to build OVA images. This is just a side information. You
can still build the OVA by converting the vmdk to an ova via the ovftool
after the kiwi build has finished

> Attempting to start up from:
> -> EFI Virtual disk (0.0)... No compatible bootloader found.

Regarding your boot image I believe the problem is that the actual
image blob (the vmdk inside the OVA) might not been built with EFI
support, even though I see firmware="uefi" in your type setup.

As such can you please try and check if the native .vmdk disk image
which is part of the kiwi build results can be booted in EFI mode?
You can do this as follows:

qemu-kvm -cpu Broadwell-v2 -m 4096 -bios /usr/share/qemu/ovmf-x86_64-ms.bin -hda image-file.vmdk

The virtual EFI firmware (OVMF) can be found in the qemu-ovmf package
just in case you haven't installed QEMU and its components. Alternatively
you should also be able to use the .vmdk blob in an EFI machine setup
in e.g virtualbox

So if the plain disk blob can boot in EFI mode, the problem is not on
the actual image itself but more on the OVA metadata and VSphere.
If it does not boot in EFI mode it would help if you can provide
the .vmdk binary blob

> Below is my config for VM profile
>
> <type image="oem" filesystem="xfs" initrd_system="dracut"
> firmware="uefi" format="ova" eficsm="false"

With this spec CSM mode is off, meaning no BIOS boot should
be possible at all and only EFI is in place

> Can you please review and suggest what can be wrong here? Let me know
> if any more details are required. Thank You!

Let's check first if the plain disk blob is EFI bootable as I wrote.

Hope this helps

Regards,
Marcus
--
Public Key available via: https://keybase.io/marcus_schaefer/key.asc
keybase search marcus_schaefer
signature.asc

Rinku Rajole

unread,
Apr 14, 2026, 11:50:33 AM (9 days ago) Apr 14
to kiwi
Hi Marcus, Thank you for your inputs on this. Yes, I'm able to UEFI boot successfully with vmdk(by converting it into qcow2) with below commands:

cp /usr/share/OVMF/OVMF_VARS.secboot.fd /tmp/ovmf_vars_sb.fd

qemu-system-x86_64 \
  -enable-kvm \
  -cpu host \
  -m 4096 \
  -machine q35 \
  -drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE.secboot.fd \
  -drive if=pflash,format=raw,file=/tmp/ovmf_vars_sb.fd \
  -drive file=oraclelinux8.qcow2,format=qcow2,if=ide \
  -boot order=c \
  -vnc :1 \
  -serial mon:stdio \
  -monitor none

Able to login using VNC viewer as well. So, as you said earlier

> So if the plain disk blob can boot in EFI mode, the problem is not on
> the actual image itself but more on the OVA metadata and VSphere.

I'm checking on the OVA metadata and Vsphere part now. Will keep posted.

Rinku Rajole

unread,
Apr 15, 2026, 8:02:28 AM (8 days ago) Apr 15
to kiwi
Hi, my issue is resolved after identifying correct configuration for VM settings in Vsphere. I was missing the correct setting of Guest OS Family and OS version.

In my case,

Guest OS Family - Linux

Guest OS Version - Oracle Linux 8 (64-bit) 

By default, it was setting it to OS Family as Others and Version to Other Linux(32-bit) something like this.

Now VM is booting as expected and All settings are coming up in the VM.

Thank You Marcus for quick your support! Appreciated.


Marcus Schäfer

unread,
Apr 15, 2026, 9:42:07 AM (8 days ago) Apr 15
to 'Rinku Rajole' via kiwi
Hi,

> Hi, my issue is resolved after identifying correct configuration for VM
> settings in Vsphere. I was missing the correct setting of Guest OS
> Family and OS version.

Yay, happy you found a solution :)

> In my case,
>
> Guest OS Family - Linux
> Guest OS Version - Oracle Linux 8 (64-bit)
>
> By default, it was setting it to OS Family as Others and Version to
> Other Linux(32-bit) something like this.

Ah yes, no EFI boot on 32bit Linux VM emulation.

Thanks for the feedback.

Best regards,
signature.asc
Reply all
Reply to author
Forward
0 new messages