Project status
Use case
This module provides backup rotation logic for arbitrary files.
Features
- Daily, weekly and monthly backups as cronjob
- Local and remote backups supported
- Compressed backups (tar and gz is used).
- Backup file structure is completely adaptable.
- Configure an email address to get notified if your backup source isn't
available.
- Works incrementally (can complete interrupted backups after reboot e.g., uses
rsync)
- Completely configurable how long you plan to preserve your backup files
- Optionally use your own synchronisation, compression and/or cleanup tool
Usage
Run this script daily to generate your configured backup file structure.
./backupRotation.sh
or after installation:
backup-rotation
Installation with yourt from the arch user repository
yaourt --sync backupRotation
Manual installation on any posix compatible operating system
Copy the script file "backupRotation.sh" to "/usr/bin/backup-rotation" and the
provided timer and service files ("backupRotation.service" and
"backupRotation.timer") to "/etc/systemd/system/backup-rotation.service" and
"/etc/systemd/system/backup-rotation.timer" and enable services:
Enable service under systemd
systemctl enable backup-rotation.timer
to enable the backup logic. After running:
systemctl start backup-rotation.timer
you can see the worker running in your system logs and observe generated backup
files.
Configuration
Simply create a text file under "/etc/backupRotation" and insert bash code
which sets all options you want to overwrite.