8.3 Cannot boot from CD Rom
-
I have been trying to test out the new 8.3 version and cannot get it to boot off the CD ROM for the first VM which I installed using the CLI.
My plan was to install XO from sources on the first VM Created.
The ISO is a Debian 12 and the CD is properly inserted and visible to the VMCD 0 VBD: uuid ( RO) : 92e6b374-a62f-04f9-cbff-9a6128a6cee4 vm-name-label ( RO): XOA empty ( RO): false userdevice ( RW): 1 CD 0 VDI: uuid ( RO) : e0b019db-c8a5-4f5b-953a-0d35dcd28ca3 name-label ( RW): debian-12.10.0-amd64-netinst.iso sr-name-label ( RO): ISOStore virtual-size ( RO): 663748608
But from the console it seems that the system does not even try to boot from the CD as it gives the following error
I checked the Boot policy and it seems to be fine
HVM-boot-policy ( RW): BIOS order HVM-boot-params (MRW): firmware: uefi; order: cdn
VBDs (SRO): 92e6b374-a62f-04f9-cbff-9a6128a6cee4; 53f1af58-655d-0209-4a4c-e0c68d5892b7
The same seems to work fine with 8.2 LTS and i have not faced any issue. So is there something in 8.3 which I missed?
-
Hi,
Just to be sure I understand. You installed XCP-ng 8.3, now you try to boot a VM and install Debian, but it doesn't work, right?
Is your XCP-ng 8.3 fully up to date?
-
@olivierlambert Yes that is correct. This is a fresh install and this is the first VM. The Host is fully updated.
-
Weird, it's like the CD cannot be read. Can you double check the shasum of it?
-
@olivierlambert The SHASUM seems fine. I did a re-install of the OS and still am being hit with the same error.
-
Can you try with another ISO from, I don't know, Ubuntu or another OS? This is really a basic thing, I don't understand why such simple operation doesn't work for you
-
@olivierlambert said in 8.3 Cannot boot from CD Rom:
Can you try with another ISO from, I don't know, Ubuntu or another OS? This is really a basic thing, I don't understand why such simple operation doesn't work for you
What if @escape222 were to try doing it from the NetInst image of Debian Linux 12.9.0 and see if that one boots (in case there's an issue with 12.10.0)? As the 12.10.0 is a new point release, they can always then afterwards do a "apt upgrade" to apply the updates from the point release.
Then if the Debian Linux version 12.9.0 NetInst image does successfully boot, then there may be an issue worth reporting in the 12.10.0 point release.
-
@john.c The interesting thing is that this entire stuff works fine in XCP-ng 8.2. The same ISO works fine there. The issue seem to be with 8.3.
@olivierlambert Let me go back to the install and try a lower release or any other OS.
-
@escape222 I have no problem UEFI booting the same
debian-12.10.0-amd64-netinst.iso
image on XCP 8.3. I just created a new VM using the Debian 12 template and it worked correctly.Can you try setting the
DVD-drive
first in the boot order for the VM (on the Advanced tab). You can disable the network boot too (and also maybe the hard drive as a test). -
@Andrew Thanks was this VM created using Xen Orchresta? I have been trying to do this from a newly installed machine with no XO on it. Creating a Debian VM from XO seems to work fine and is possible on systems that I have upgraded to 8.3
-
@escape222 Yes, using XO.
You can do a quick deploy of XOA as a bootstrap to build your own XO VM.
-
@olivierlambert I tried with with the template for Ubuntu and also with Debian 12.9. Still I am getting the same error in 8.3
I am trying to get this automated using Ansible so deploying via the Quick deploy is not an option and this is a tested script which used to work fine in 8.2
When i started failing in 8.3 is when i tried deploying manually.
I will try to see if I can reproduce this in a different HW configuration but maybe over the weekend.
-
@olivierlambert
After some digging around this seems to be an known issue with QEMU. As this is related to Apple, Not sure if this is the same issue that I am facing. But the symptoms are exactly the same(https://github.com/utmapp/UTM/issues/2333#issuecomment-786307182)
The solution atleast for Macbooks seem to be
*There is a race condition in QEMU's (emulated) USB device reset and OVMF enumerating the boot options. M1 macs are too fast and can enumerate the boot options before QEMU sets up the device. This race condition is why it occurs for some people and not others and also why it stops appearing if you enable debug logging.
Without thinking too hard how to prevent the race, the hack around is to have a 1 second wait between the device enumeration and boot option enumeration.*
-
@escape222 It looks like I found something which is preventing me from booting. When the HVM firmware mode is set to UEFI then this does not boot. But changing to BIOS mode the boot is successful and I can continue
Any suggestions on how this can be fixed?
-
Ping @stormi
I have no idea why UEFI boot doesn't work for you.
-
@olivierlambert After a bit of trial and error I think I found out why this was not working for me. There were two issues which I think was causing the issue.
(i) I had a local SR which was used for ISO storage. I deployed a Debian VM via XO (which had a bios firmware) and noticed that I was getting the same error when the OS was being installed. This ISO SR was created on a SSD which was with Advanced Format (4K). Even though XCP-ng allows the SR to be created it seems it is not able to read from the SR if it is with 4K format. The release note for 8.3 says it supports 4K via largeblock driver, but it seems it it is not for iso, So I moved the SR from a 4K disk to a legacy one and XO was able to create the VM and start install
(ii) The default Debian 12 template has Secureboot enabled by default along with UEFI. Since I had no reason for to enable Secureboot I had not enrolled the platform keys on the host. Once the VM is created from the template I disabled secureboot with the command
xe vm-param-set platform:secureboot=false
Once this was done I was able to boot from the CD ROM.
If possible I have a couple of suggestions
When the SR is created using type ext it does not allow the SR to be created if the underlying disk is 4K format without specifying largeblock. But it allows the SR creation when the type is iso. Maybe it is possible to check the type of underlying storage before ISO SR creation?
Else it could be documented in this page Storage in XCP-ng with a clear warning not to create SRs in 4K storage. It looks like XCP-ng has not issues in installing itself in a 4K storage, but then the Guesttools will not work anymore as it gets installed in the 4K disk and the VM is not able to read it and gives and IO errorThe template for Linux systems may be modified to not require Secureboot.
-
All of that makes sense then, thanks a lot for your feedback! Pinging @stormi so we can triage your input