2026-02-03 16:29:51 +01:00
2026-02-03 11:11:37 +01:00

pobsync

pobsync is a pull-based backup tool for sysadmins.
It creates rsync-based snapshots with hardlinking (--link-dest) and stores them centrally on a backup server.

Backups are pulled over SSH, not pushed, and are designed to be run from cron or manually.


Design overview

  • Runtime, config, logs and state live under /opt/pobsync
  • Backup data itself is stored under a configurable backup_root (e.g. /srv/backups)
  • Two snapshot types:
    • scheduled
      Participates in retention pruning (daily / weekly / monthly / yearly)
    • manual
      Kept outside the scheduled prune chain, defaults to hardlinking from the latest scheduled snapshot
  • Minimal dependencies (currently only PyYAML)

Requirements

  • Python 3.11+
  • rsync
  • ssh
  • Root or sudo access on the backup server
  • SSH keys already configured between backup server and remotes

Installation (system-wide, no venv)

This assumes you are installing as root or via sudo.

From the repository root:

python3 -m pip install --upgrade pip
sudo python3 -m pip install .
Description
Rsync-based backup solution.
Readme 144 KiB
Languages
Python 98%
Shell 2%