Hi all,
Disclosure first: I'm the author of the tool below.
I got tired of checking my backups by hand. The worst part was a backup that simply wasn't made: no error, no message, nothing — you only find out when you go looking for it. And a green backup task only tells you data was written, not that the machine can be restored. Checking that by hand for every VM takes time, and it's easy to skip.
So I built a tool that does it for me, and I'd like feedback from people who run PBS.
It doesn't make backups and doesn't change anything in PBS. One agent on the Proxmox Backup Server checks the backups that are already there:
- VM restore test: opens the VM's disk from the backup read-only (proxmox-backup-client map) and reads a real file from the guest's filesystem in full — ext4, XFS, LVM and NTFS, one disk or several
- Containers and host backups (proxmox-backup-client): reads a real file out of them too
- A new backup is tested soon after it lands, so the tests follow your PVE backup jobs — or only at night, if you prefer
- Verify jobs: damage found by your verify jobs shows as a failed backup; no verify job (or an old one) gets a hint to set one up
- Late backups: learns each machine's backup rhythm and warns when a backup is overdue
- Mass deletion: warns when many backups of a machine disappear at once (a wrong prune rule, or someone deleting backups)
- Machines are shown by their own names (taken from the VM/CT config), in the dashboard, alerts and reports
- Alerts by email, Telegram or webhook; a printable report of the checks for audits
Setup: one agent on the PBS host and a read-only API token with the DatastoreReader role. The agent finds the datastores and every VM, container and host in them by itself. It runs at low CPU/IO priority, one check at a time, and never opens a port. Encrypted backups can't be read without their key, so they're shown as "not testable" — never as passed.
The dashboard server is something you host yourself (Linux x86-64). No cloud account, no telemetry, it works with no internet at all.
Pricing, plainly: free for 2 machines, forever — no sign-up. Everything is unlocked for 14 days on any number of machines. Each VM, container or host backed up to PBS counts as one machine; the backup server itself doesn't. The agent is open source (Apache 2.0), so you can read exactly what runs as root on your PBS; the dashboard is closed source.
https://vaultwitness.com/proxmox
Feedback very welcome, especially on the checks: is there a way a PBS backup has failed you that this wouldn't catch? And if your VMs use a filesystem or disk layout I didn't list, I'd like to hear how it goes.
Disclosure first: I'm the author of the tool below.
I got tired of checking my backups by hand. The worst part was a backup that simply wasn't made: no error, no message, nothing — you only find out when you go looking for it. And a green backup task only tells you data was written, not that the machine can be restored. Checking that by hand for every VM takes time, and it's easy to skip.
So I built a tool that does it for me, and I'd like feedback from people who run PBS.
It doesn't make backups and doesn't change anything in PBS. One agent on the Proxmox Backup Server checks the backups that are already there:
- VM restore test: opens the VM's disk from the backup read-only (proxmox-backup-client map) and reads a real file from the guest's filesystem in full — ext4, XFS, LVM and NTFS, one disk or several
- Containers and host backups (proxmox-backup-client): reads a real file out of them too
- A new backup is tested soon after it lands, so the tests follow your PVE backup jobs — or only at night, if you prefer
- Verify jobs: damage found by your verify jobs shows as a failed backup; no verify job (or an old one) gets a hint to set one up
- Late backups: learns each machine's backup rhythm and warns when a backup is overdue
- Mass deletion: warns when many backups of a machine disappear at once (a wrong prune rule, or someone deleting backups)
- Machines are shown by their own names (taken from the VM/CT config), in the dashboard, alerts and reports
- Alerts by email, Telegram or webhook; a printable report of the checks for audits
Setup: one agent on the PBS host and a read-only API token with the DatastoreReader role. The agent finds the datastores and every VM, container and host in them by itself. It runs at low CPU/IO priority, one check at a time, and never opens a port. Encrypted backups can't be read without their key, so they're shown as "not testable" — never as passed.
The dashboard server is something you host yourself (Linux x86-64). No cloud account, no telemetry, it works with no internet at all.
Pricing, plainly: free for 2 machines, forever — no sign-up. Everything is unlocked for 14 days on any number of machines. Each VM, container or host backed up to PBS counts as one machine; the backup server itself doesn't. The agent is open source (Apache 2.0), so you can read exactly what runs as root on your PBS; the dashboard is closed source.
https://vaultwitness.com/proxmox
Feedback very welcome, especially on the checks: is there a way a PBS backup has failed you that this wouldn't catch? And if your VMs use a filesystem or disk layout I didn't list, I'd like to hear how it goes.