Files
pobsync/README.md

1.1 KiB

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 .