Proxmox VM Won't Start: Configuration Error Fix
Your Proxmox VM won't start with a configuration error. Simple lock file removal usually fixes it. If not, check storage and VM config file directly.
Quick Fix (30 seconds) — Remove Stale Lock File
What's actually happening here is that Proxmox uses lock files to prevent two processes from touching the same VM at once. When a VM crashes or a command gets interrupted, that lock file stays behind. The VM sees it, thinks someone else is running it, and refuses to start.
Open your Proxmox shell (SSH or console). Run this:
rm -f /var/lock/qemu-server/lock-*.conf
Then try starting the VM again. That's it. 90% of the time, this is all you need. The lock file is just dead weight.
If the VM still won't start, move to the next fix.
Moderate Fix (5 minutes) — Check Storage and VM Config
Sometimes the lock file isn't the real problem. Proxmox also fails to start a VM when the storage holding the config is full or the config file itself got corrupted. The error message might show something like 'can't lock file' but the real cause is a full disk.
First, check disk space on your Proxmox host:
df -h
If any partition is at 100% (especially /var or the partition where VMs live), you need to free space. Common culprits: old backups in /var/lib/vz/dump, ISO files you forgot about, or logs. Delete what you don't need.
Second, look at the VM config file. It lives in /etc/pve/qemu-server/ with the VM ID as the filename (like 100.conf). Cat it:
cat /etc/pve/qemu-server/100.conf
If the output looks like garbage or has weird characters, the file is corrupted. You can restore it from a backup if you have one (check /etc/pve/qemu-server/backup/). No backup? You'll have to recreate the VM from scratch, unfortunately.
If the config looks normal but the VM still doesn't start, move to the advanced fix.
Advanced Fix (15+ minutes) — Corrupt Storage Metadata
This one is rare but nasty. What's actually happening is that the storage layer (usually ZFS or LVM) has metadata corruption. Proxmox tries to read the VM disk but gets back garbage, so it throws a configuration error.
First, check if the storage is mounted and accessible. For ZFS:
zpool status
zfs list
If you see errors like 'checksum mismatch' or 'device offline', your pool has issues. Run a scrub:
zpool scrub yourpool
Scrubbing can take hours depending on pool size. Let it finish. After it's done, check again:
zpool status -v
If errors persist, you might have a failing disk. Check SMART data:
smartctl -a /dev/sdX
Replace /dev/sdX with your actual disk device. Look for 'Reallocated_Sector_Ct' and 'Current_Pending_Sector'. High numbers mean replace the disk.
For LVM users:
pvscan
lvscan
vgscan
If something reports 'unknown' or 'inconsistent', you need to repair the volume group. Try:
vgck yourvg
vgreduce --removemissing yourvg
The vgreduce --removemissing command removes missing PVs. Use it only if a disk is actually gone, not just unmounted.
Still no luck? The nuclear option: restart the entire Proxmox host. I know it sounds dumb, but sometimes the cluster filesystem (pmxcfs) gets stuck. A reboot clears everything.
After reboot, try starting the VM again. If it still fails, you're looking at a hardware issue or a VM disk that's genuinely corrupted. At that point, restore from backup.
One last thing: if you're running Proxmox 7.x or older, upgrade. There was a known bug in 6.x where the lock file cleanup failed silently. Version 8.x handles this much better.
Was this solution helpful?