[SOLVED] How does the Proxmox Backup Server _actually_ work? | compared to other backups

Apr 19, 2022
29
4
8
Hello everyone,

I have been running a Proxmox Backup Server in test mode for a few months. It is already running very well and I have been able to restore entire machines, volumes or files without any problems.
Nevertheless, I still lack the basic understanding of how the Proxmox Backup Server works.

Or to put it another way:
Explain as if I were five - I know backup solutions with weekly full backups, daily incremental backups or daily differential backups.
+ Where are my full backups with the PBS? Are there any at all? At what interval are they created?
+ With the classic combination of full backups and incremental backups, a corrupt incremental backup destroys all subsequent backups. How does PBS deal with this? I have already seen that the backup server requires incredibly few HDD resources.

Overall, I am thrilled with what I have seen of the Proxmox Backup Server so far. However, in order to go productive with it with a clear conscience, I need more knowledge about how the server _actually_ works.

I am looking forward to your answers.
 
  • Like
Reactions: Sasha
Or to put it another way:
Explain as if I were five - I know backup solutions with weekly full backups, daily incremental backups or daily differential backups.
+ Where are my full backups with the PBS? Are there any at all? At what interval are they created?
+ With the classic combination of full backups and incremental backups, a corrupt incremental backup destroys all subsequent backups. How does PBS deal with this? I have already seen that the backup server requires incredibly few HDD resources.

The backup client splits the disk image or file archive (pxar) into chunks. Every chunk is compressed (and encrypted, if an encryption key is set) and stored on the backup server's data store. Storage happens based on the chunk's hash, meaning that if there are multiple identical chunks, only one copy is saved (deduplication). Aside from the stored chunks, every backup snapshot also produces index files (.didx/.fidx). These index files are essentially are list of all chunks (identified by their hash) that are needed for this backup.

Essentially, with this system, every backup snapshot is a 'full backup' - however the data is automatically shared with other backups, reducing the amount of needed storage drastically.
In terms of data corruption: If chunk is corrupted, all backup snapshots that reference this particular chunk will be affected. If an index file is corrupted, only that particular snapshot is affected.

Verification jobs can be used to check if all chunks are clean, essentially it checks if the chunk's hash is equal to the expected one.

https://pbs.proxmox.com/docs/technical-overview.html#
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!