restic
Restic is a cross-platform command-line backup program that stores deduplicated, encrypted snapshots in local or cloud storage backends.
- GitHub stars
- 36k
- Last commit
- 2 days ago
- Latest release
- v0.19.1
- Licence
- BSD-2-Clause

Restic is a backup program designed to be fast, efficient and secure. It runs on Linux, macOS and Windows, with support for FreeBSD and OpenBSD, and ships as a single command-line tool written in Go. It is released under the BSD-2-Clause license, and the project keeps documentation and a Discourse forum for questions.
Backups are stored in a repository that you create with an init command and protect with a password, and the README warns that losing the password means losing the data. Each run saves a snapshot, and deduplication keeps repeated data from using extra space. Files can be restored with a restore command, or the repository can be mounted through FUSE so past snapshots can be browsed. Restic can store backups in a local directory, over SFTP, on an HTTP REST server, in Amazon S3 or S3-compatible storage, OpenStack Swift, Backblaze B2, Azure Blob Storage, Google Cloud Storage, or through rclone.
Key features
- Encrypted, deduplicated backup snapshots
- Backends for S3, B2, Azure, GCS and SFTP
- Any rclone remote supported as a backend
- Restore command and FUSE mount for browsing
- Runs on Linux, macOS, Windows and BSD
- Single Go binary with password-protected repositories
Pricing: Free and open source under the BSD-2-Clause license.





