restic-backup-suite
Backup toolkit for Linux servers built on restic: backup with database dumps, retention and verification, interactive restore, snapshot browser, installer with aliases and cron job.
restic-backup-suite
restic-backup-suite is a set of Bash scripts that automates a restic backup on a Linux server: database dumps, file backup, retention rules and a sample-based repository check run in one command. It also ships an interactive restore, a snapshot browser and an installer with shell aliases and an optional cron job.
One command (
restic-backup) handles dumps, backup, retention and integrity check. Restore and snapshot browsing each have an interactive menu.
graph LR
A["Files and directories"] --> B["restic-backup"]
C["Databases in Docker or native"] --> B
B --> D["restic repository"]
D --> E["restic-restore"]
D --> F["restic-inspect"]
Documentation
| Page | Content |
|---|---|
| Installation | Requirements, installer, password file, SFTP, updating, uninstalling |
| Configuration | All config.sh keys, backends, excludes, retention |
| Usage | Commands, options, snapshot browser, aliases |
| Database dumps | Docker MariaDB/MySQL, Docker PostgreSQL, native |
| Stopping services | systemd services and Docker containers around the backup |
| Restore | Restoring, database import, limitations |
| Scheduling | Setting up and changing the cron job |
| Monitoring | Success marker, logs, exit codes |
| Security | Where passwords and keys live, file permissions |
| Technical details | Sequence, restic calls, SSH configuration |
| Troubleshooting | Messages, causes, solutions |
Features
| Feature | Description |
|---|---|
| Backup | restic backup with paths, excludes, compression and the tag automated |
| Retention | restic forget --prune with daily, weekly and monthly snapshots |
| Verification | restic check with a configurable share of data after each successful backup |
| Database dumps | Docker MariaDB/MySQL, Docker PostgreSQL and native MySQL/MariaDB |
| Stopping services | systemd services and Docker containers for consistent file snapshots |
| Restore | Menu for a full restore, fixed paths, database dumps and custom paths into a temporary directory |
| Snapshot browser | Details, statistics, file list, search, diff, dump view |
| SFTP support | Writes the SSH configuration and tests the connection |
| Monitoring | Marker file with the time of the last successful backup |
| Installer | Symlinks, aliases, configuration template, optional cron job |
Requirements
| Requirement | Note |
|---|---|
| Linux with Bash 4.4 or newer | |
| restic | In PATH, with support for --compression |
| root | All scripts require root |
docker, mariadb-dump/mysqldump, sftp |
Only for the respective optional features |
License
MIT. Source and issues: GitHub