Is there a way to disable the automatic start of VMs before proxmox boots?

turin231

Member
Apr 20, 2020
25
5
23
41
I have made a mistake trying to passthrough a NIC that was already used by another VM through a bridge. At restart the host is trying to start both VMs and crashes and i have no access to it either from the web interface or the console. Is there a way to disable the automatic start of the VMs before boot by any chance?
 
hi,

if you cannot boot the host at all, you could try booting with a recovery iso and editing the VM configuration in /etc/pve/qemu-server/VMID.conf and remove the onboot parameter to disable that option
 
thank you for the reply. I actually managed to boot up by disabling all the networking card. But /etc/pve/qemu-server/VMID.conf seems read only and cannot change this even using root.
 
did you replace VMID with the actual ID of your VM? those files aren't readonly under normal circumstances.
 
yeah i did.

btw this in a node with a cluster of two if this matters for this case.
 
Last edited:
So the issues i have are similar to this: https://forum.proxmox.com/threads/i-o-errors-pve-not-booting.75120/post-343494

The reason i think things go read only is that there is no quorum with the networking disabled.

The problem is that if i disable networking the errors stop - i can boot. If i use pvecm expect 1 to have quorum on the faulty node anything i try to run freezes the console.

I think i might try a debian live iso and try to edit the vm configuration files from there.
 
  • Like
Reactions: justinclift
You might not be able to see the files in /etc/pve if you boot from an iso. Because the problem is caused by PCI passthrough, I suggest editing the boot menu (press the 'e'-key) and removing the intel_iommo=on (or add amd_iommu=off ) from the kernel parameters. Then the VMs won't be able to do passthrough and Proxmox should start normally (except for failing to start those VMs).

EDIT: Nowadays IOMMU is enabled by default and you need to add intel_iommu=off. Or just disable VT-d or IOMMU in the motherboard BIOS temporarily.
 
Last edited:
You might not be able to see the files in /etc/pve if you boot from an iso. Because the problem is caused by PCI passthrough, I suggest editing the boot menu (press the 'e'-key) and removing the intel_iomm=on or amd_iommu=on from the kernel parameters. Then the VMs won't be able to do passthrough and Proxmox should start normally (except for failing to start those VMs).
Thank you that was a great idea (i feel bad for not thinking it earlier). I ended up actually disabling virtulization from the BIOS and indeed the host booted normally so i could remove the incorrect passthrough.
 
Last edited:
if you access it a the server with a screen and keypad log in and use

qm list

then

nano /etc/pve/qemu-server/VMID.conf
swapping vmid for the number of the device
go down to booton change 1 to 0
on them all if your not sure
and reboot

Hope that helps

i thin
 
Last edited:
  • Like
Reactions: slatts
I FOUND A SOLUTION. Disable virtualisation in the bios (SVM mode). proxmox will still boot but the offending VMs won’t so you can make configuration changes as you wish.
Yeah. I added PCIE pass through of the intel wifi card to a windows vm. it froze the machine, not even network pings would get through or physical keyboard would respond. i stupidly also set to startup on boot hence it seemed trapped. Recovery mode was no help as i kept getting “refused to connect” errors. Gigabyte motherboards don’t even have an option to disable wifi in bios.
 
Last edited:
  • Like
Reactions: slatts and mehdital
@tld8102 @Antwan Hey just wanted to say thanks because this also fixed my issue! I did something very similar with an autostart VM that was crashing Proxmox after configuring PCI passthrough incorrectly.