→ Applies to: VMware ESXi 6.5 and above
Step 1. Connect to VMware ESXi via SSH as root (replace <your_ip_address_or_hostname> with the correct ip)
ssh root@<your_ip_address_or_hostname>
Step 2. Check the snapshots associated with each VM
vim-cmd vmsvc/getallvms | \
awk 'NR>1 {print $1, $2}' | \
while read VMID VMNAME; do
echo "VM: $VMNAME (ID $VMID)"
vim-cmd vmsvc/snapshot.get "$VMID"
echo
done
EXAMPLE OUTPUT
vim-cmd vmsvc/getallvms | \ > awk 'NR>1 {print $1, $2}' | \ > while read VMID VMNAME; do > echo "VM: $VMNAME (ID $VMID)" > vim-cmd vmsvc/snapshot.get "$VMID" > echo > done VM: SynetoOS (ID 1) Get Snapshot: VM: VM1 (ID 10) Get Snapshot: VM: FILESERVER (ID 11) Get Snapshot: Snapshot Name : snapshot1 Snapshot Id : 1 Snapshot Description : test snapshot Snapshot Created On : 2025-08-07T12:34:56.000Z Snapshot State : poweredOff VM: VM2 (ID 13) Get Snapshot: VM: VM3 (ID 15) Get Snapshot: VM: VM4 (ID 18) Get Snapshot: VM: SynetoFileRecovery (ID 2) Get Snapshot: VM: VM5 (ID 20) Get Snapshot: VM: VM6 (ID 21) Get Snapshot: VM: VM7 (ID 5) Get Snapshot: VM: VM8 (ID 6) Get Snapshot: VM: VM9 (ID 7) Get Snapshot: VM: VM10 (ID 8) Get Snapshot: VM: VM11 (ID 9) Get Snapshot:
If no details appear under "Get Snapshot:" for a VM, it means the VM doesn't have any snapshots.
Step 3. Login to VMware ESXi GUI (replace <your_ip_address_or_hostname> with the correct ip/hostname)
https://<your_ip_address_or_hostname>
Step 4. Click on Virtual Machines
Step 5. Select the VM whose snapshots need to be deleted, then click on Actions
Step 6. Click on Snapshots, then Manage snapshots
Step 7. Select the snapshot to be deleted, then click on Delete snapshot