These examples focus on storage tier combinations and the most common backup.env settings involved.
For the full storage reference, see docs/docs_file/storage_backends.md.
Example 1 β Local-only (simplest)
Use when the node has enough local storage and you want the fewest moving parts.
# configs/backup.env
BACKUP_PATH=/opt/proxsave/backup
LOG_PATH=/opt/proxsave/log
SECONDARY_ENABLED=false
CLOUD_ENABLED=false
RETENTION_POLICY=simple
MAX_LOCAL_BACKUPS=15
Run:
proxsave --dry-run
proxsave
Example 2 β Local + Secondary (mounted NAS)
Use when you want fast local archive creation, plus longer retention on a mounted filesystem.
# configs/backup.env
SECONDARY_ENABLED=true
SECONDARY_PATH=/mnt/secondary-backup
SECONDARY_LOG_PATH=/mnt/secondary-backup/logs
MAX_LOCAL_BACKUPS=7
MAX_SECONDARY_BACKUPS=30
Notes:
- SECONDARY_PATH must be a mounted path (NFS/CIFS/SMB mounted on /mnt/…), not a network address.
- Secondary failures are non-fatal (the run may finish as warning).
Example 3 β Local + Cloud (rclone)
Use when you want an offsite copy but donβt have secondary storage.
# configs/backup.env
CLOUD_ENABLED=true
# rclone remote name from: rclone config
CLOUD_REMOTE=myremote
# Optional subdirectory within the remote
CLOUD_REMOTE_PATH=/proxsave/backup
# Cloud logs directory (path only; remote name comes from CLOUD_REMOTE)
CLOUD_LOG_PATH=/proxsave/log
See also: docs/docs_file/rclone_cloud_path.md.
Example 4 β Local + Secondary + Cloud (recommended for resilience)
Use when you want:
- local = fastest backups
- secondary = quick restores on LAN
- cloud = disaster recovery copy
# configs/backup.env
SECONDARY_ENABLED=true
SECONDARY_PATH=/mnt/secondary-backup
SECONDARY_LOG_PATH=/mnt/secondary-backup/logs
CLOUD_ENABLED=true
CLOUD_REMOTE=myremote
CLOUD_REMOTE_PATH=/proxsave/backup
CLOUD_LOG_PATH=/proxsave/log
Example 5 β Bundling for easier transfers
If you enable BUNDLE_ASSOCIATED_FILES=true, ProxSave also creates a single .bundle.tar artifact that groups the archive plus checksum/metadata files. This is useful when copying/uploading.
# configs/backup.env
BUNDLE_ASSOCIATED_FILES=true
Typical artifacts per run (names simplified):
- main archive: backup.YYYYMMDD_HHMMSS.tar.<compression>
- associated files: *.sha256, *.metadata, manifest*.json
- optional bundle: backup.YYYYMMDD_HHMMSS.bundle.tar
Example 6 β Retention: simple vs GFS
Simple retention is count-based:
RETENTION_POLICY=simple
MAX_LOCAL_BACKUPS=15
MAX_SECONDARY_BACKUPS=15
MAX_CLOUD_BACKUPS=15
GFS retention keeps daily/weekly/monthly/yearly points:
RETENTION_POLICY=gfs
RETENTION_DAILY=7
RETENTION_WEEKLY=4
RETENTION_MONTHLY=12
RETENTION_YEARLY=3
Example 7 β Exclusions and custom paths
Exclude temporary paths (glob patterns):
BACKUP_EXCLUDE_PATTERNS=*/cache/**, /var/tmp/**
Add a few custom files/directories (one per line inside quotes):
CUSTOM_BACKUP_PATHS="
/root/.config/rclone/rclone.conf
/etc/custom/tool.conf
"