Tools: Restic Has a Free Backup Tool That Actually Works - Complete Guide

Tools: Restic Has a Free Backup Tool That Actually Works - Complete Guide

What Is Restic?

Supported Storage Backends

Quick Start

Install

Initialize a Repository

Create a Backup

Restore

Automate with Cron

Smart Retention Policies

Backup Speed

Encryption

Verify Backup Integrity

Real-World Use Cases

Cost Comparison

Who Uses Restic?

Get Started Restic is a free, open-source backup program that is fast, efficient, and secure. It runs on Linux, macOS, Windows, and FreeBSD. Restic is a modern backup tool designed to be easy to use while providing strong security guarantees. Unlike traditional backup tools, restic encrypts ALL data by default and supports deduplication. Why developers love it: Restic can backup to: First backup saves everything. Subsequent backups only save changes (incremental). Automatically removes old backups while keeping important ones. Restic uses content-defined chunking and deduplication: Every backup is encrypted with AES-256 before leaving your machine: With 27K+ GitHub stars: Your data is now encrypted, deduplicated, and safe. Need to collect web data before backing it up? Check out my web scraping tools on Apify — extract structured data from any website. Custom scrapers available: [email protected] Templates let you quickly answer FAQs or store snippets for re-use. Hide child comments as well For further actions, you may consider blocking this person and/or reporting abuse

Command

Copy

# 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