Skip to content
Commitpedia
Log in Join & edit

restic: fast, encrypted, deduplicated backups to local disk, SFTP or cloud storage

The restic repository: a single Go binary that backs up to local disks, SFTP, S3, Backblaze B2, Azure, Google Cloud and anything rclone can reach, with encryption and deduplication always on.

Drafted with AI from official documentation. Scripts were run in a test environment and repository links verified. Awaiting a human check. Did it work for you? Last edited Outdated?

Edit history of restic: fast, encrypted, deduplicated backups to local disk, SFTP or cloud storage: 1 recorded edit
Edit history · 1 edit
Type
Repo
Edits
1
Editors
1
First issued
15 Oct 2026
Last edit
15 Oct 2026
Source
restic/restic

restic/restic

Stars
36.6k
Forks
1.9k
Language
Go
Licence
BSD-2-Clause
Last push
11 Oct 2026

On GitHub: Fast, secure, efficient backup program

Open on GitHub

restic (about 36,600 stars on GitHub) is a backup program written in Go by Alexander Neumann and a large group of contributors. Every repository is encrypted with AES-256 and authenticated, data is split into content-defined chunks so unchanged data is never stored twice, and snapshots are cheap enough to take hourly. The same commands work whether the repository is a local directory, an SFTP server, an S3 bucket or an rclone remote.

Use it when you want file-level backups of servers, laptops or NAS shares without running a server component, and when you want to be able to restore from any machine with the binary and the password. It is a good fit for the off-site leg of a 3-2-1 plan because cloud object storage is a first-class backend. For block-level VM backups, Proxmox Backup Server or your hypervisor’s tooling is a better match.

Install it from your package manager (apt install restic, dnf install restic, brew install restic) and update to the newest release with restic self-update, or download a release binary from the repository’s Releases page. A first repository takes three commands:

export RESTIC_REPOSITORY=/mnt/backup/restic
restic init
restic backup ~/Documents
restic snapshots
restic restore latest --target /tmp/restored

Careful: restic forget --prune permanently deletes snapshots and their unique data; preview it with --dry-run. The repository also hosts the design document describing the repository format, which other tools can read, and the issue tracker where backend-specific problems are discussed. Credit to the restic authors; the code is released under the BSD 2-Clause license.

Did this work for you?

No votes yet. Be the first.

If it did not work, the report form below tells the editors what went wrong.

See also

  • 0336 Back up and restore a Docker named volume to a tar archive A bash script that copies the contents of a named Docker volume into a .tar.gz on the host, and restores an archive… Intermediate · Step by step · Linux, macOS Script Backup tools · Docker basics 15 Oct 2026
  • 0363 Restore drill: prove your backup works in 15 minutes A repeatable procedure to restore one file and one database from your newest backup into a scratch location, compare the result with… Intermediate · Step by step · Linux, macOS Article Backup tools · Strategy & restore drills 15 Oct 2026
  • 0364 Schedule PostgreSQL and MySQL dumps with systemd timers Write one dump script for PostgreSQL and MySQL, run it from a systemd service and timer instead of cron, keep two weeks… Intermediate · Step by step · Linux Article Backup tools · PostgreSQL 15 Oct 2026
  • 0365 Proxmox Backup Server: first setup and first restore Install Proxmox Backup Server, create a datastore and a backup user, connect it to Proxmox VE as storage, run the first VM… Intermediate · Step by step · Linux Article Backup & restore · Backup tools 15 Oct 2026
  • 0366 restic backup wrapper with tagging, retention and a weekly check A bash wrapper that runs restic backup on a fixed list of paths, applies a keep-daily/weekly/monthly policy with forget and prune, runs… Intermediate · Step by step · Linux, macOS Script Backup tools · Backups & syncing 15 Oct 2026

History

Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.

  1. Dominik +1,636 chars

Report a problem

Something wrong, unsafe or copied? Tell the editors.
What is wrong?