Proxmox 101: Snapshot, Backup, and Restore

Proxmox 101: Backup Restore VM

Backup vs Snapshot

Backup is an independent file separated from VM, while snapshot is included in the VM images. We can download or move backup files to other server but not with snapshot. From size perspective, snapshot take less storage than backup because it only save changed data from VM in VM disk while backup take more storage because it create a clone from VM with it’s whole disk.

Backup can save us from hardware failure if we store the backup files outside our Proxmox VE server, or when we need to move out VM to other Proxmox VE server. While Snapshot can save us from software failure where we only need to rollback to previous version as soon as possible without need to import everything back.


A. Create Backup from Running VM

In this part, we will create a backup snapshot from a running VM with some data inside it

1. Create File for Validation Later

2. Create Backup to Local Storage

  1. Go to VM -> Backup menu -> Click on Backup now

  2. Insert backup information, then click Backup

  3. Wait until Task stopped with OK

  4. Now we have a new backup for VM

B. Restore VM Using Backup

  1. Delete data that we created before snapshot and create new data

  2. Shutdown VM

  3. Start restore snapshot to running VM

  4. No need to change anything for Overwrite Restore configuration, unless you want to restore the VM to another storage or changing specification

  5. Click Restore and confirm with Yes

  6. Wait until Task is finished with OK

  7. Verify that the deleted file hello.txt is back and gone.txt is removed


A. Create Live Snapshot from Running VM

1. Create File for Validation

2. Generate Snapshot

  1. Go to VM -> Snapshots

  2. Click Take Snapshots and give it name

  3. Wait until Tasks Finished with OK

  4. Snapshot created and can be used to rollback VM state

B. Restore VM Using Snapshot

1. Create File for Validation

2. Restore Snapshot

  1. Go to VM -> Snapshots
  2. Select snapshot to rollback, then click Rollback and confirm with Yes

  3. The Rollback does not have Tasks windows but we can monitor it from Tasks log

  4. When we back to console, it return to the last state just before snapshot where we left it with echo, cat, and md5sum command. When we check with ls, the removed.txt file is deleted because it was not in this snapshot state.


This post is licensed under CC BY 4.0 by the author.

Comments powered by Disqus.