Attic: Deduplicating Backup for Linux Systems That Don’t Need a GUI
What Is It?
Attic is a command-line backup tool focused on efficient storage through content-aware deduplication. Originally developed for Linux environments where scripted or cron-based backup workflows are preferred, Attic offers robust support for encrypted, incremental, and space-optimized backups — without needing a full database engine or central server.
It’s a solution aimed at administrators who want full control, versioned backups, and the ability to mount any archive as a live filesystem using FUSE. While development has since forked into projects like Borg and Bupstash, Attic remains a solid choice for those who prefer minimal dependencies and well-tested features over constant changes.
Capabilities
Feature | Description |
Block-Level Deduplication | Only stores new data chunks across snapshots, reducing storage usage |
Compression Support | Supports zlib and lzma for compressing archived data |
Encryption (Optional) | Encrypts archives using AES-256 with HMAC authentication |
FUSE Mounting | Archives can be browsed like normal directories |
Incremental Backups | Skips unchanged files, ideal for scheduled daily snapshots |
Script-Friendly | Full CLI control, suited for cron jobs and system scripts |
Cross-Version Restore | Files can be recovered from any point-in-time snapshot |
Deployment Notes
– No GUI or service: Attic is designed for command-line use only.
– Best for Linux/Unix: Built and tested for POSIX systems; no native Windows support.
– Single-host design: Works locally or over SSH — but no built-in centralized server model.
– Static binaries available: Can be deployed on minimal systems without compiling.
– Forked upstream: BorgBackup is a more actively maintained fork, but Attic remains stable for existing environments.
Installation Guide (Debian/Ubuntu Example)
1. Install via pip or package manager
sudo apt install attic
# or
pip install attic
2. Create a repository
attic init /backup/repo
3. Run a backup
attic create /backup/repo::daily-$(date +%Y-%m-%d) /etc /home /var
4. List archives
attic list /backup/repo
5. Restore data
attic extract /backup/repo::daily-2024-12-01
6. Mount an archive
attic mount /backup/repo::daily-2024-12-01 /mnt/attic
Usage Scenarios
– Server admins needing daily encrypted backups without additional software stacks.
– Recovery of individual files from mounted backup points.
– Archiving config directories or user data with minimal I/O impact.
– Automating deduplicated backups across multiple directories in cron scripts.
– Using as a backup backend for remote systems over SSH with minimal overhead.