SPB Git
5.6 KB · 49 lines json
1{2  "slug": "restic",3  "name": "restic",4  "aliases": [],5  "vendor": { "name": "restic project (Alexander Neumann and contributors)", "slug": "restic-project", "website": "https://restic.net" },6  "homepage_url": "https://restic.net/",7  "docs_url": "https://restic.readthedocs.io/en/stable/",8  "repo_url": "https://github.com/restic/restic",9  "license_url": "https://github.com/restic/restic/blob/master/LICENSE",10  "product_type": "cli-tool",11  "product_status": "active",12  "summary": "Encrypted, deduplicating backup program written in Go that stores snapshots in local, SFTP, S3-compatible and many cloud backends",13  "description": "restic is an open-source backup tool, written in Go and licensed under BSD-2-Clause, that saves directory snapshots into a repository where every file is split into content-defined chunks, deduplicated and encrypted before leaving the machine. The repository format is independent of the backend, so the same commands work against a local disk, an SFTP server, S3-compatible object storage (including MinIO and Backblaze B2), Azure, Google Cloud Storage, the project's own rest-server, or any of the dozens of providers reachable through rclone.\n\nTypical use is a scheduled `restic backup` of selected paths followed by `restic forget --prune` with a retention policy, and occasional `restic check` runs to verify integrity. Snapshots can be listed, diffed, restored partially or mounted as a read-only FUSE filesystem for browsing. Because encryption and deduplication happen client-side, the storage provider never sees plaintext, and backing up several machines into one repository shares identical chunks. Wrappers such as resticprofile or autorestic add configuration files and scheduling, and restic runs on macOS, Linux, Windows and BSD as a single static binary.\n\nIts constraints: there is no server-side component or central scheduler, so each client needs its own cron, launchd or systemd timer; pruning and checking large repositories take time and memory; compression was added relatively recently (repository format v2) and must be enabled; and repository-level locking makes concurrent operations from several hosts something to plan for.",14  "capabilities": ["Client-side AES-256 encryption with authenticated chunks", "Content-defined chunking and deduplication across snapshots and hosts", "Backends: local, SFTP, S3-compatible, Azure, GCS, rest-server and rclone", "Retention policies with forget and prune", "Integrity verification with check, including data re-reading", "Partial restores, snapshot diffs and FUSE mount for browsing", "Optional compression in repository format v2"],15  "workflows": ["Nightly encrypted backup of a workstation to S3-compatible storage", "Back up several servers into one deduplicated repository over SFTP", "Browse and restore a single file from a past snapshot", "Verify repository health on a schedule"],16  "advantages": ["Single static binary on all major platforms", "Storage-agnostic repository format", "Strong default encryption with no plaintext at rest remotely", "Permissive BSD license and active maintenance"],17  "limitations": ["No built-in scheduler or server; relies on external timers and wrappers", "Prune and check can be slow on very large repositories", "Repository locks complicate concurrent access from many hosts", "Compression must be enabled and only applies to format v2 repositories"],18  "prerequisites": ["restic binary on each client", "A storage target (disk, SFTP host, object storage or rclone remote)"],19  "audiences": ["Individuals and homelab users", "System administrators backing up small fleets", "Researchers protecting data on workstations and servers"],20  "alternatives": ["borgbackup", "rclone"],21  "comparison_notes": "BorgBackup offers the same encrypted, deduplicated model with mature compression and is often faster on local or SSH targets, but it requires Borg on the remote side for best performance and has no native object-storage backends in its stable series. rclone is a sync and transfer tool rather than a snapshotting backup program; it is commonly used as a backend for restic and for one-way mirrors where versioning is not needed.",22  "categories": [{ "slug": "backup-recovery", "primary": true }],23  "tags": ["backup", "encryption", "deduplication", "cli", "open-source", "s3", "go", "macos", "linux"],24  "use_cases": ["back-up-data"],25  "operating_systems": ["macos", "linux", "windows"],26  "execution_modes": ["local"],27  "interfaces": ["cli"],28  "deployment_models": ["desktop", "on-premises"],29  "integrations": ["Amazon S3", "MinIO", "Backblaze B2", "Azure Blob Storage", "Google Cloud Storage", "rclone", "SFTP", "rest-server"],30  "data_formats": ["restic repository format v1/v2"],31  "languages": ["Go"],32  "source_model": "open-source",33  "license_spdx": "BSD-2-Clause",34  "pricing_model": ["open-source", "free"],35  "self_hostable": true,36  "sources": [37    { "url": "https://restic.net/", "type": "official_site", "title": "restic · Backups done right!", "supports": ["name", "summary"], "checked_at": "2026-11-02" },38    { "url": "https://restic.readthedocs.io/en/stable/", "type": "official_docs", "title": "restic documentation", "supports": ["capabilities", "integrations", "workflows", "limitations"], "checked_at": "2026-11-02" },39    { "url": "https://github.com/restic/restic/blob/master/LICENSE", "type": "license_page", "title": "restic LICENSE (BSD 2-Clause)", "supports": ["license_spdx", "source_model"], "checked_at": "2026-11-02" }40  ],41  "confidence": "high",42  "discovery_method": "editorial-research",43  "depth": "deep",44  "editorial_status": "reviewed",45  "visibility": "public",46  "featured": false,47  "author": "batch-B2"48}49
Files · laptop-initial-20261102
Menu

Theme