UEFI netboot

LnxBil

Distinguished Member
Feb 21, 2015
9,975
2,099
303
Saarland, Germany
Hi there,

I'm stuggling with UEFI netboot inside of PVE. I have a working UEFI netboot for booting a bunch of laptops, so it works in general. It also works for non-UEFI netboot in PVE, as it has been for years, but I cannot get it to work with UEFI and the most annoying part is, that I cannot debug this properly: Neither can I see that files get requested on the server, nor do I see something other than "guest has not initialized the display (yet)" on the screen. I'm a little bit lost here.

Any suggestions?
 
"guest has not initialized the display (yet)"
hm? please post the VM-config - usually you get the output of OVMF (and can enter it with a key-combo) in noVNC
 
Oh, it seems like a bug: I created the first VM and now a new VM on my fiberchannel-attached SAN (LVM) and it does not work. If I create the VM on the local ZFS in (same host), it works:

Code:
root@proxmox4 /etc/pve/qemu-server > cat 7774.conf
bios: ovmf
bootdisk: scsi0
cores: 1
efidisk0: local-zfs:vm-7774-disk-5,size=128K
ide2: none,media=cdrom
memory: 512
name: test-uefi-zfs
net0: virtio=6A:EC:64:BD:59:03,bridge=vmbr0
numa: 0
ostype: l26
scsi0: local-zfs:vm-7774-disk-4,size=32G
scsihw: virtio-scsi-pci
smbios1: uuid=3849a821-dc2f-40b4-beea-6925a378b577
sockets: 1
vmgenid: 7f5fd004-4072-4016-aa14-22be2fe70c03

root@proxmox4 /etc/pve/qemu-server > cat 7775.conf
bios: ovmf
bootdisk: scsi0
cores: 1
efidisk0: san-dx100:vm-7775-disk-1,size=128K
ide2: none,media=cdrom
memory: 512
name: test-uefi-san
net0: virtio=6A:EC:87:B6:22:CB,bridge=vmbr0
numa: 0
ostype: l26
scsi0: san-dx100:vm-7775-disk-0,size=32G
scsihw: virtio-scsi-pci
smbios1: uuid=0f4440a6-2794-4f86-9f19-42c7bd08362c
sockets: 1
vmgenid: 72433bc1-25f1-4bc4-b8d4-1c0fd8fb1f08

And the diff for easy comparison:

Code:
root@proxmox4 /etc/pve/qemu-server > diff -Nur 7774.conf 7775.conf
--- 7774.conf   2019-05-03 12:41:11.000000000 +0200
+++ 7775.conf   2019-05-03 12:40:37.000000000 +0200
@@ -1,15 +1,15 @@
 bios: ovmf
 bootdisk: scsi0
 cores: 1
-efidisk0: local-zfs:vm-7774-disk-5,size=128K
+efidisk0: san-dx100:vm-7775-disk-1,size=128K
 ide2: none,media=cdrom
 memory: 512
-name: test-uefi-zfs
-net0: virtio=6A:EC:64:BD:59:03,bridge=vmbr0
+name: test-uefi-san
+net0: virtio=6A:EC:87:B6:22:CB,bridge=vmbr0
 numa: 0
 ostype: l26
-scsi0: local-zfs:vm-7774-disk-4,size=32G
+scsi0: san-dx100:vm-7775-disk-0,size=32G
 scsihw: virtio-scsi-pci
-smbios1: uuid=3849a821-dc2f-40b4-beea-6925a378b577
+smbios1: uuid=0f4440a6-2794-4f86-9f19-42c7bd08362c
 sockets: 1
-vmgenid: 7f5fd004-4072-4016-aa14-22be2fe70c03
+vmgenid: 72433bc1-25f1-4bc4-b8d4-1c0fd8fb1f08

That is really strange indeed. Storage is:

Code:
root@proxmox4 /etc/pve/qemu-server > lvs | grep 7775
  vm-7775-disk-0  san-dx100 -wi-------  32,00g
  vm-7775-disk-1  san-dx100 -wi-------   4,00m

root@proxmox4 /etc/pve/qemu-server > zfs list | grep 7774
rpool/data/vm-7774-disk-0              584M   648G   584M  -
rpool/data/vm-7774-disk-1             3,35M   648G  3,35M  -
rpool/data/vm-7774-disk-2               56K   648G    56K  -
rpool/data/vm-7774-disk-3               68K   648G    68K  -
rpool/data/vm-7774-disk-4               56K   648G    56K  -
rpool/data/vm-7774-disk-5               68K   648G    68K  -

I don't know why the previous disks have not been deleted, but that's another problem.

If I now move the disks of the SAN VM to the local ZFS, it does not work either:

Code:
root@proxmox4 /etc/pve/qemu-server > diff -Nur 7774.conf 7775.conf
--- 7774.conf   2019-05-03 12:41:11.000000000 +0200
+++ 7775.conf   2019-05-03 12:48:53.000000000 +0200
@@ -1,15 +1,15 @@
 bios: ovmf
 bootdisk: scsi0
 cores: 1
-efidisk0: local-zfs:vm-7774-disk-5,size=128K
+efidisk0: local-zfs:vm-7775-disk-1,size=4M
 ide2: none,media=cdrom
 memory: 512
-name: test-uefi-zfs
-net0: virtio=6A:EC:64:BD:59:03,bridge=vmbr0
+name: test-uefi-san
+net0: virtio=6A:EC:87:B6:22:CB,bridge=vmbr0
 numa: 0
 ostype: l26
-scsi0: local-zfs:vm-7774-disk-4,size=32G
+scsi0: local-zfs:vm-7775-disk-0,size=32G
 scsihw: virtio-scsi-pci
-smbios1: uuid=3849a821-dc2f-40b4-beea-6925a378b577
+smbios1: uuid=0f4440a6-2794-4f86-9f19-42c7bd08362c
 sockets: 1
-vmgenid: 7f5fd004-4072-4016-aa14-22be2fe70c03
+vmgenid: 72433bc1-25f1-4bc4-b8d4-1c0fd8fb1f08

One can see that the efidisk-size if off. After setting the volume size accordingly (without changing the 7775.conf), it works:

Code:
root@proxmox4 /etc/pve/qemu-server > zfs set volsize=128k rpool/data/vm-7775-disk-1

My LVM volume group PE size is 4MB, so this may be the problem on the LVM side. Any ideas how to get it to work?