# macOS
-weight: 500;">brew -weight: 500;">install restic # Ubuntu/Debian
-weight: 600;">sudo -weight: 500;">apt -weight: 500;">install restic # Or download binary
https://github.com/restic/restic/releases
# macOS
-weight: 500;">brew -weight: 500;">install restic # Ubuntu/Debian
-weight: 600;">sudo -weight: 500;">apt -weight: 500;">install restic # Or download binary
https://github.com/restic/restic/releases
# macOS
-weight: 500;">brew -weight: 500;">install restic # Ubuntu/Debian
-weight: 600;">sudo -weight: 500;">apt -weight: 500;">install restic # Or download binary
https://github.com/restic/restic/releases
# Local backup
restic init --repo /backup/my-project # S3 backup
export AWS_ACCESS_KEY_ID=your-key
export AWS_SECRET_ACCESS_KEY=your-secret
restic init --repo s3:s3.amazonaws.com/my-backup-bucket # SFTP backup
restic init --repo sftp:user@server:/backups/my-project
# Local backup
restic init --repo /backup/my-project # S3 backup
export AWS_ACCESS_KEY_ID=your-key
export AWS_SECRET_ACCESS_KEY=your-secret
restic init --repo s3:s3.amazonaws.com/my-backup-bucket # SFTP backup
restic init --repo sftp:user@server:/backups/my-project
# Local backup
restic init --repo /backup/my-project # S3 backup
export AWS_ACCESS_KEY_ID=your-key
export AWS_SECRET_ACCESS_KEY=your-secret
restic init --repo s3:s3.amazonaws.com/my-backup-bucket # SFTP backup
restic init --repo sftp:user@server:/backups/my-project
restic backup /home/user/projects --repo /backup/my-project
restic backup /home/user/projects --repo /backup/my-project
restic backup /home/user/projects --repo /backup/my-project
# Restore latest snapshot
restic restore latest --target /restore --repo /backup/my-project # Restore specific files
restic restore latest --target /restore --include "/projects/myapp" --repo /backup/my-project
# Restore latest snapshot
restic restore latest --target /restore --repo /backup/my-project # Restore specific files
restic restore latest --target /restore --include "/projects/myapp" --repo /backup/my-project
# Restore latest snapshot
restic restore latest --target /restore --repo /backup/my-project # Restore specific files
restic restore latest --target /restore --include "/projects/myapp" --repo /backup/my-project
# Daily backup at 2 AM
0 2 * * * restic backup /home/user/projects --repo s3:s3.amazonaws.com/my-bucket --password-file /etc/restic-password
# Daily backup at 2 AM
0 2 * * * restic backup /home/user/projects --repo s3:s3.amazonaws.com/my-bucket --password-file /etc/restic-password
# Daily backup at 2 AM
0 2 * * * restic backup /home/user/projects --repo s3:s3.amazonaws.com/my-bucket --password-file /etc/restic-password
# Keep: 7 daily, 4 weekly, 12 monthly, 3 yearly snapshots
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --keep-yearly 3 --prune
# Keep: 7 daily, 4 weekly, 12 monthly, 3 yearly snapshots
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --keep-yearly 3 --prune
# Keep: 7 daily, 4 weekly, 12 monthly, 3 yearly snapshots
restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --keep-yearly 3 --prune
# Check all data integrity
restic check --repo /backup/my-project # Read all data and verify
restic check --read-data --repo /backup/my-project
# Check all data integrity
restic check --repo /backup/my-project # Read all data and verify
restic check --read-data --repo /backup/my-project
# Check all data integrity
restic check --repo /backup/my-project # Read all data and verify
restic check --read-data --repo /backup/my-project - Fast incremental backups (only changed data)
- Client-side encryption (AES-256)
- Deduplication across all backups
- Supports 20+ storage backends
- Cross-platform (Linux, macOS, Windows)
- Single binary — no dependencies
- Verifiable backups (data integrity checks) - Local: Any local directory or external drive
- Cloud: AWS S3, Google Cloud Storage, Azure Blob
- S3-compatible: MinIO, Backblaze B2, Wasabi, DigitalOcean Spaces
- SFTP: Any SSH server
- REST: Restic REST server
- Rclone: 40+ cloud providers via rclone - First backup of 50GB project: ~10 minutes (depends on storage)
- Subsequent backups: ~30 seconds (only changes)
- Moving/renaming files: instant (content-addressed) - Storage provider CANNOT read your data
- No additional encryption tools needed
- Password or key file authentication - Developer: Backup code, databases, configs to S3 for $1/month
- Homelab: Backup everything to a NAS via SFTP
- Business: Encrypted backups to Backblaze B2 ($5/TB/month)
- Server: Automated nightly backups with retention policies - DevOps teams for server backups
- Developers for project backups
- Homelab enthusiasts
- Businesses needing encrypted offsite backups - Install restic (one binary)
- Initialize a repository
- Run your first backup
- Set up a cron job