So, a little background:
- In Proxmox you have local mounted storage on each of your nodes.
- You also have Thin-LVM volumes, which are an abstraction layer sitting on top of physical hardware; so like /dev/sdb isn’t the actual volume, it’s just the block storage for the thinly provisioned LVM volume.
- You can put images there, but you can’t overwrite them to replace them if, for example, you have a raw disk image you’re trying to replace it with (because Proxmox doesn’t let you upload disk images sort-of directly) or let you refer to them directly when you’re creating a VM in the GUI.
So now what?
- Create a VM using the local storage, not your LVM-Thin directory.
- Use SCP to upload the image to ‘/mnt/pve/<node>/images/<number>/
- SSH into the server and go to the same directory; you’ll probably see two images, one named as ‘vm-<number>-disk-0.raw’ and one with your original name.
- If you made an EFI disk, expect there to be a vmdk, qcow2, or other image there. Don’t touch that one.
- Delete the original disk and rename the other to its name.
- Use qm rescan to rescan the drive image, and you should be good.
- Boot the new volume.
In theory, anyway. You probably are going to get Not Found and Access Denied errors in the EFI loader when you try this. Here’s a list of the things I tried to get it working, and eventually did:
- Turn off Secure Boot in the VM’s BIOS.
- Add Boot Option to find the file itself.
- Choose a SATA disk (not sure if this helped or not)
- Delete, then readd, an EFI partition on the local storage with the .vmdk itself.
- Try this a few times until some mysterious combination works.
Good luck…