A backup job in Proxmox VE is a recurring task that backs up selected VMs and containers to the PBS at the time you set. You create it once, then it runs on its own.
Creating the backup job
- In PVE: Datacenter (not an individual VM) → Backup.
- Click Add.
In the dialog, you fill in:
“General” tab
| Field | Recommendation |
|---|---|
| Storage | Your PBS storage (e.g. xaweho-pbs) |
| Schedule | 02:00 for a nightly backup at 2 a.m. |
| Selection mode | Include selected VMs (or All for everything) |
| Send email | Always or On failure only |
| Your email address | |
| Compression | zstd |
| Mode | Snapshot (for running VMs) |
| Enable | enabled |
| Job-ID | leave empty (generated automatically) |
“Retention” tab
This is where you define how many backups are kept. More details in Configuring retention policies.
Recommendation for most setups:
| Field | Value |
|---|---|
| Keep last | 3 (the last three backups, regardless of when) |
| Keep daily | 7 |
| Keep weekly | 4 |
| Keep monthly | 6 |
| Keep yearly | 2 |
That gives you roughly 22 snapshots per VM, covers daily/weekly/monthly/yearly and uses PBS deduplication efficiently.
”Note Template” tab
Optional. Here you can attach a note to each backup — something like {{guestname}} {{node}} {{job-id}}. Handy when browsing in the PBS GUI.
”Advanced” tab
In most cases, keep the defaults. Only interesting for special requirements:
- Bandwidth limit (KB/s): if you don’t want to max out your internet connection during the day (default: unlimited at night).
- PBS Fingerprint: to override the storage’s fingerprint.
Click Add. The job is created and runs automatically at the next schedule trigger.
Schedule syntax
The schedule field uses a syntax similar to systemd.timer. Some examples:
02:00— daily at 2 a.m. (a time without a weekday means: every day)mon 02:00— every Monday at 2 a.m.*/6:00— every 6 hours on the hour (so 0:00, 6:00, 12:00, 18:00)mon..fri 02:00— Monday through Friday at 2 a.m.02:00,14:00— daily at 2 a.m. and 2 p.m.
Typical pitfall: keywords like daily or weekly only work on their own and cannot be combined with a time — the parser rejects daily 02:00.
Recommendation for private customers: 02:00 — fits most workloads, runs at night without any performance impact.
Multiple backup jobs for different VMs
You can create as many jobs as you like. Useful, for example:
- Important VMs: daily, long retention (databases, mail).
- Standard VMs: daily, standard retention.
- Test VMs: weekly, short retention.
Per job, you pick the specific VMs in the “General” tab under Selection mode → Include selected VMs.
Testing the backup job
You don’t have to wait until 2 a.m.:
- Datacenter → Backup → select the new job.
- Click Run now.
The job starts immediately, and you can watch the logs live.
What you should see in the logs
After a successful job:
INFO: Starting Backup of VM 100 (...)
INFO: Backup of VM 100 finished (...)
INFO: Starting Backup of VM 101 (...)
INFO: Backup of VM 101 finished (...)
INFO: Backup job finished successfully
TASK OK
If a single VM backup fails, the job still continues for the other VMs — the job status then becomes “TASK ERROR”.
Frequently asked questions
What happens if a backup doesn’t fit into the daily time window? The backup runs to completion anyway — even if that takes several hours. If the next backup job starts while the current one is still running, the new one waits (PVE serializes backups by default).
How do I see whether all backups ran? In PVE: Datacenter → Backup → select job → Job Detail. There you’ll find the latest task list with success/failure. Alternatively: mail notifications, then you get an email on failure.
Can I run backups with bandwidth limits?
Yes, in the “Advanced” tab → Bandwidth limit. Value in KB/s, so 10000 = 10 MB/s = 80 Mbit/s. Handy if the family is still watching Netflix at night.
Are containers (LXC) backed up too?
Yes. Backup jobs back up VMs and LXC containers. In the PBS datastore, each backup lands under vm/<id>/... (for VMs) or ct/<id>/... (for containers).
What do Mode: Snapshot vs Suspend vs Stop mean?
- Snapshot: the VM keeps running, the backup uses a disk snapshot. Default, works for most setups.
- Suspend: the VM is briefly paused. Only needed on storage without snapshot support (such as local LVM without thin provisioning).
- Stop: the VM is shut down, backed up, started again. Longest downtime, but the most consistent backups.
In most cases, Snapshot is enough. For critical databases, additionally run pg_dump/mysqldump into a safe folder — then the DB state is guaranteed consistent too.
What’s next
First login to the Proxmox Backup Server — what you see in the GUI
After ordering, the login mail arrives. Here's an overview of the most important areas of the PBS GUI — datastore, sync, tape, users, notifications.
Setting up the datastore as a backup target in Proxmox VE
Add your xaweho PBS datastore to your Proxmox VE in a few clicks — via GUI or CLI, with fingerprint and login.
Creating an encryption key for PBS and storing it safely
Enable client-side encryption with AES-256-GCM. Generate the key, store it safely and register it in the PBS storage.
Running your first backup to the PBS — step by step
A manual test backup of a single VM to check that the datastore is connected correctly and everything works.