[Script] Proxmox VE & PBS – System, Configuration and Structure and More Backup & Recovery

Damianoo

New Member
Apr 3, 2025
12
2
3
Hello everyone :)

I've been working with Proxmox VE and Proxmox Backup Server for some time, and after testing many available backup scripts, I realized there's no quick and easy way to save Proxmox system data, configurations, and structures.
In the event of an operating system disaster, it is usually necessary to perform various configurations and setups manually, which often takes a lot of time and is not always immediately possible for everyone.

So I started building a unified backup system that:
- Works on both VE and PBS
- Automatically detects the environment
- Saves all critical system configuration environment files for complete disaster recovery or migration

---

What it actually does:

This script automatically collects and backs up everything needed to rebuild the node from scratch — not just the VM data, but also the system itself: configurations, ZFS, storage, networking, users, repositories, and more.

All options are managed through a single .env file, so you can easily enable or disable features without touching the code.

GitHub: https://github.com/tis24dev/proxmox-backup

---

Main features:

- Multi-location and cloud backup support
- Automatic rotation and cleanup of old backups
- Compressed archives with integrity verification
- Maintains full directory structure for easy restore
- Cloud email notifications ready out-of-the-box
- Telegram notifications (multilingual), setup takes about 10 seconds with a unified bot and unique pairing code
- Configurable .env file for files, exclusions, and backup options
- Security module checks for file tampering and permission issues
- Exports ZFS info, storage list, PXAR data, network config, and installed packages
- Collects PBS job data and stores reports
- Auto-installs missing dependencies (optional)
- Generates detailed HTML reports

...and I’m still adding features as I go.

Saves your full Proxmox setup (configs, storages, users, ZFS, etc.) — without duplicating VM data.

---

What gets saved

This backup covers everything needed to fully restore the Proxmox environment, except VM or CT disk data:

- Storage and Datastore detail and configuration
- pxar file
- /etc/pve — full Proxmox cluster and node configuration
- /etc/network/interfaces — network interfaces and bridges
- /etc/hosts, /etc/resolv.conf, /etc/hostname host identity and DNS configuration
- /etc/apt and /etc/apt/sources.list.d — repository lists and package sources
- /etc/postfix, /etc/ssmtp, /etc/aliases — email relay configurations
- /etc/systemd units related to Proxmox or custom services
- /root/.bashrc, /root/.profile, /root/.ssh — environment and access configurations
- /etc/zfs/zpool.cache and ZFS pool/export information
- /etc/storage.cfg — PVE storage configuration
- PBS datastore configuration and PXAR job metadata
- List of installed packages (via dpkg --get-selections)
- Network parameters (IP, MAC, bridge, VLAN info)
- System information summary (hostname, kernel, architecture, uptime, etc.)
- Proxmox Backup Server job list and retention settings
- User, group, and permission mappings (/etc/passwd, /etc/group, /etc/shadow excluded by default if sensitive)
- Custom script configs, logs, and runtime environment files
- and more!

---

Why I built it:

I wanted a reliable, hands-off backup system for my Proxmox setup — something I could restore from cleanly after a full OS reinstall without losing configurations or PBS data.
The project is modular, versioned, and fully open-source.

---

What’s next:

Feedback and feature ideas are always welcome! :)

GitHub: https://github.com/tis24dev/proxmox-backup
 
Last edited:
  • Like
Reactions: UdoB
This sounds great. I just installed PVE yesterday as a replacement for my ESXi homelab, and very much would want something that can back up the host node. I'll keep an eye on this thread as feedback comes in.
 
This sounds great. I just installed PVE yesterday as a replacement for my ESXi homelab, and very much would want something that can back up the host node. I'll keep an eye on this thread as feedback comes in.
Hi! If you encounter any problems or bugs, please report them in the appropriate section of GitHub so that we can deal with them as effectively as possible.
 
The first problem I can see is instructing potential users to execute unknown scripts directly from some Internet source (curl to bash).
I.e., without downloading it (as unpriviliged) user first. Without verifying the hash and the GPG signature. Without optionally uploading the script to Virustotal. And without manual inspecting what the program does.

Your script may be honest and safe, but various things happen.

E.g.: https://en.wikipedia.org/wiki/Supply_chain_attack
 
Last edited:
  • Like
Reactions: Johannes S and UdoB
The first problem I can see is instructing potential users to execute unknown scripts directly from some Internet source (curl to bash).
I.e., without downloading it (as unpriviliged) user first. Without verifying the hash and the GPG signature. Without optionally uploading the script to Virustotal. And without manual inspecting what the program does.

Your script may be honest and safe, but various things happen.

E.g.: https://en.wikipedia.org/wiki/Supply_chain_attack

Correct. Which is why I said I'd monitor this thread for feedback and haven't executed anything yet. I may be new to PVE, but I've been a database admin in IT for 25 years (and I don't mean just MSSQL). OP may be on the up-and-up, but I'm so green at PvE I'm not the target audience for evaluation.
 
Last edited:
The first problem I can see is instructing potential users to execute unknown scripts directly from some Internet source (curl to bash).
I.e., without downloading it (as unpriviliged) user first. Without verifying the hash and the GPG signature. Without optionally uploading the script to Virustotal. And without manual inspecting what the program does.

Your script may be honest and safe, but various things happen.

E.g.: https://en.wikipedia.org/wiki/Supply_chain_attack
Hi! In the description, I indicate both the quick method and the standard method. I hope to resolve this situation you've reported as soon as possible
 
Correct. Which is why I said I'd monitor this thread for feedback and haven't executed anything yet. I may be new to PVE, but I've been a database admin in IT for 25 years (and I don't mean just MSSQL). OP may be on the up-and-up, but I'm so green at PvE I'm not the target audience for evaluation.
Hi! If you know what you're doing, you don't need to install anything automatically. You can simply copy the files and run proxmox-backup.sh, and the script will work, regardless of which folder you place it in. Some dependencies may be missing (e.g., rclone), but the script should notify you of this.
You can use backup.env to set your parameters, as well as the desired debug level.

but I am also working to really resolve this situation
 
Last edited:
I have been using this script for a while now, and it hasn't caused any issues. Seems to work well.

However, I've yet to try it to restore a configuration.