Attic – Minimal Backup Tool That Just Does the Job
What is Attic
Attic isn’t trying to impress anyone. It’s a command-line backup program built for one thing: making efficient, encrypted backups that don’t waste disk space. No daemons, no GUIs, no magic. It walks the filesystem, chunks files into pieces, skips what’s already there, and writes the rest into an archive. That’s it.
It works best in environments where things don’t need to look pretty — where backup scripts run nightly, disks are tight, and reliability matters more than features. It stores data in a repository — a simple folder full of compressed, deduplicated blocks — and can restore files exactly as they were. If you need a GUI, this isn’t for you. If you want control, it might be.
The project is no longer maintained, but the last release is stable and still usable. Many moved on to Borg, which is a direct successor, but Attic still runs quietly on a lot of older systems.
Quick Specs
Field | Info |
System | Linux, BSD, macOS |
Interface | CLI only |
Deduplication | Content-based chunking |
Encryption | Optional (AES-256) |
Compression | LZMA or zlib |
Storage | Local or remote (SSH) |
Format | Append-only chunks, metadata, and indexes |
Versioning | Yes — multiple snapshots with almost no space penalty |
Mountable | Yes, via FUSE |
Last Version | 0.16 (final) |
License | BSD-style |
How It Works
Attic scans directories, splits data into chunks based on content, checks what’s already in the repo, and skips anything it has seen before. Only new data gets written. The result: backups that get faster and smaller over time.
It doesn’t overwrite anything. Every backup is a new snapshot — immutable. Snapshots can be listed, inspected, mounted like a read-only filesystem, or restored.
You don’t need to run a service. It’s just a binary, plus a Python backend. Point it at a folder, give it a destination repo, and let it work.
Setup
It’s not in most modern repos anymore, but still builds fine.
Install from source:
git clone https://github.com/jborg/attic
cd attic
python3 setup.py install
Or check if it’s still in your distro:
sudo apt install attic # Older Debian/Ubuntu
Better to use a virtualenv to avoid breaking things.
Usage Examples
Create a repo:
attic init /mnt/backup/archive
Backup important dirs:
attic create /mnt/backup/archive::2025-07-29 /etc /home /var
See what’s inside:
attic list /mnt/backup/archive
Mount to browse:
attic mount /mnt/backup/archive::2025-07-29 /mnt/tmp
Run integrity check:
attic check /mnt/backup/archive
Where It Fits
– Old servers with no extra tools and no GUI
– Scheduled scripts backing up daily configs
– Archiving machines before decommissioning
– Restoring one file from a backup six months ago
– When compression and deduplication actually matter