Proxmox snapshots freeze the state of a VM or container at a point in time so you can roll back in seconds after a bad update or configuration change. They are quick and cheap, but they live on the same storage as the VM.
Before you start
- The VM disk must be on storage that supports snapshots: LVM-thin, ZFS, Ceph RBD, or qcow2 files on directory/NFS storage. Plain LVM and raw files on directories do not (storage types).
- The QEMU guest agent installed in VMs for consistent snapshots.
Take a Proxmox snapshot
- Select the VM or container and open Snapshots.
- Click Take Snapshot, give a name such as
before-php-upgradeand a description. - For VMs, tick Include RAM if you want to resume exactly where it was, running programs included. This takes longer and uses more space.
- Click Take Snapshot.
From the shell:
qm snapshot 105 before-php-upgrade --description "PHP 8.3 upgrade"For containers use pct snapshot with the same arguments.
Roll back
- In Snapshots, select the snapshot and click Rollback.
- Confirm. Everything since the snapshot is lost, and the VM returns to that state.
qm rollback 105 before-php-upgradeDelete snapshots you no longer need
Select the snapshot and click Remove, or run qm delsnapshot 105 before-php-upgrade. Old snapshots keep growing as data changes, fill thin pools and can slow disk I/O.
Warning: A snapshot is not a backup. If the disk or storage fails, the snapshot is lost with it. Keep real backups on other storage (vzdump backups).
Troubleshooting
- Take Snapshot greyed out: the disk storage does not support snapshots, or a CD-ROM with a local ISO is attached on some setups; detach it.
- Snapshot stuck or locked: clear a stale lock with
qm unlock 105after checking no task is running. - Thin pool full: delete old snapshots and watch
lvs.
Frequently asked questions
How many snapshots can I keep?
Several are fine, but keep them short-lived; days, not months.
Do snapshots work while the VM runs?
Yes, there is no need to stop it.
Can I clone from a snapshot?
Yes, choose the snapshot as the source in the Clone dialog.
