Unable to boot "Arch-Linux-x86_64-cloudimg.qcow2" with OVMF (UEFI) BIOS - Even with Secure Boot Disabled

Horizontual

New Member
Jan 28, 2023
5
0
1
Proxmox Version: 7.4-3
I am trying to install Arch Linux via the official cloud image, which lists Proxmox as a tested provider:

https://wiki.archlinux.org/title/Arch_Linux_on_a_VPS

The page above details the Proxmox installation process in the table, with a link to the cloud image being:

https://gitlab.archlinux.org/archlinux/arch-boxes

From here I clicked the link provided for the qcow2 images, noting the definition of "Cloud Image" lower down, which matches up with the expectations set by the former documentation: https://geo.mirror.pkgbuild.com/images/

In this repository I downloaded the file "Arch-Linux-x86_64-cloudimg.qcow2" from the "latest" folder to Proxmox, and verified it with SHA256, imported it as a disk into a fresh VM, and set the boot order appropriately.

When booting in Seabios, Arch is detected and loads fine. When switching to OVMF, the boot passes over the drive with "not found".

I did note this additional piece of documentation that claims that Arch won't boot in OVMF with Secure Boot Enabled:

https://wiki.archlinux.org/title/Proxmox/Install_Arch_Linux_as_a_guest

I followed the instructions in the link above and successfully disabled secure boot, but still after multiple reboots and reattaching the disk, I cannot get it detected with OVMF BIOS.

Any ideas where to look next?
 
Most Linux distributions can either boot with BIOS or with UEFI but not both. When you install the Linux distribution and switch later one, you typically need to "repair boot". The link you provided also tells you that you cannot switch between BIOS (SeaBIOS) to UEFI (OVMF) after installation and you must install it in the mode you want to use it later. Maybe the provided cloud image only support BIOS? Since it appears to work fine with SeaBIOS, maybe jsut use it with SeaBIOS?
 
@leesteken You will have to forgive my ignorance on the subject of cloud images as opposed to traditional ISO's. Whilst that link does say that you cannot switch between BIOS (SeaBIOS) to UEFI (OVMF) after installation and you must install it in the mode you want to use it later, as I have been unable to boot to the installation yet with UEFI, no such installation has yet taken place - and indeed if the mode I want to use the system in later is UEFI, I cannot proceed with a SeaBIOS installation (beyond temporarily trying this for testing purposes), as I would be unable to convert that installation to UEFI later.

What gives me reason to believe that booting the Arch cloud image with UEFI is possible, is that same link, and the section you highlighted appears to be step 1 of a 2 step installation process:

1.1) Choose your BIOS and prepare your system accordingly
1.2) Install from the official cloud image.

Surely if UEFI BIOS is not an option with a cloud image, the installation becomes a 1 step process: Install from the official cloud image onto a SeaBIOS configured VM.

It certainly gives the impression to me that the cloud images are intended for use with both, provided one can configure everything correctly.
 
Last edited:
What gives me reason to believe that booting the Arch cloud image with UEFI is possible, is that same link, and the section you highlighted appears to be step 1 of a 2 step installation process:

1.1) Choose your BIOS and prepare your system accordingly
1.2) Install from the official cloud image.

Surely if UEFI BIOS is not an option with a cloud image, the installation becomes a 1 step process: Install from the official cloud image onto a SeaBIOS configured VM.

It certainly gives the impression to me that the cloud images are intended for use with both, provided one can configure everything correctly.
My mistake. I expected the cloud image to "just work" when you start the VM (with the cloud image as virtual disk) and I did not understand that you needed to install it.
 
  • Like
Reactions: Horizontual
As an update, I have been able to launch archinstall in an Arch VM using the latest Arch ISO just fine on an OVMF/q35 system.

It seems that the cloud-image versions of arch are no longer detectable as bootable by OVMF BIOS, and thus cannot be imported as disks if you intend to use OVMF/UEFI BIOS (You cannot change this decision post install). Therefore I can only recommend using the traditional ISO method when creating UEFI enabled Arch Linux VM's until more light is shed on this. I don't think much is lost overall, it would have been convenient to attach a prepped cloud-init drive from the go, I was more curious about experimenting with the cloud-image methods than anything. But still a curious blocker I hope to one day resolve.

EDIT TO ADD: If you wait long enough on an OVMF / cloud-image setup, you will drop into a UEFI shell eventually. You can reduce this wait time by removing the network adapter from the boot order list so that the PXE timeouts don't drag things out. The UEFI shell is not an area I have any expertise in - but perhaps someone more experienced can find a way to use that to access the disk and modify it to become bootable?
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!