User:Crazycomputers/sandbox/Restic
This is not a Wikipedia article: It is an individual user's work-in-progress page, and may be incomplete and/or unreliable. For guidance on developing this draft, see Wikipedia:So you made a userspace draft. Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
Original author(s) | Alexander Neumann |
---|---|
Initial release | 21 August 2015 |
Stable release | 0.9.5
/ 23 April 2019 |
Repository | github |
Written in | Go |
Operating system | Linux, macOS, Windows, and more[1] |
Type | Backup |
License | BSD[2] |
Website | www |
Restic is a deduplicating backup software with a strong focus on ease of use without compromising security and integrity. It runs on various Unix-like operating systems as well as Windows.
Many storage backends are supported, including local filesystem, SFTP server (via SSH), HTTP REST server (using rest-server[3]), S3 (from Amazon AWS or using Minio), OpenStack Swift, Backblaze B2, Microsoft Azure Blob Storage and Google Cloud Storage.
History
[edit]Restic development began in April 2014[4] and the first release was version 0.1.0 in August 2015[5].
Restic has been packaged for various operating systems and distributions, including macOS, Arch Linux, Nix & NixOS, Debian and Docker.[1]
Design
[edit]The main design goals of restic are simplicity and speed to encourage backing up and easy restoring, verifiable backups, strong security, a small footprint, and being free for anyone to use.[6] The restic design document[7] elaborates on the technical details of its design.
Being built in Go, restic supports multiple platforms and operating systems, single binary distribution and also cross-compiling.[8]
Restic uses a repository format where any file is written only once and never modified, which allows for multiple clients to access and write to the repository in parallel.[9] Multiple access keys per repository is supported.[10]
Restic has built-in deduplication, allowing it to upload only the relevant parts of changed files, thereby reducing the amount of data that needs to be transferred when backing up incrementally.[11] Compression is currently not implemented, but is being worked on.[12]
A prominent feature of restic is the ability to mount a repository using FUSE, in order to present the user with a browsable directory tree containing the various snapshots and their files and directories, allowing for quick and ad-hoc restores.[13] This feature is not available on Windows and OpenBSD.[13]
By using a local cache, restic can limit the amount of data that has to be downloaded from the repository, speeding up certain operations (at the cost of some disk space).[14]
Reception
[edit]In an interview in the Go Time podcast, restic author Alexander Neumann was invited to discuss the choice of Go for building restic, as well as challenges along the way.[15]
Cryptographer Filippo Valsorda[16] did an informal review of restic's cryptography in a post on his blog.[17]
Restic author Alexander Neumann was invited to give a lecture at FrOSCon 2015 in Bonn, Germany.[18]
Another talk was given by Alexander Neumann at CCC Cologne e.V. in Cologne, Germany in 2016.[19]
See also
[edit]References
[edit]- ^ a b "Installation instructions". restic.readthedocs.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "License information". restic.github.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "restic REST server". github.com. 29 December 2017. Retrieved 29 December 2017.
- ^ "Commit c54facf66be1c4e137121f36b300543f6673ea7c in restic source code repository". github.com. 29 December 2017. Retrieved 29 December 2017.
- ^ "Tag 0.1.0 in restic release history". github.com. 29 December 2017. Retrieved 29 December 2017.
- ^ "Restic design goals". restic.github.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "Restic design document". restic.readthedocs.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "Installation from source". restic.readthedocs.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "Repository format". restic.readthedocs.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "Manage repository keys". restic.readthedocs.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "Backups and deduplication". restic.readthedocs.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "Implement compression (issue #21)". github.com. 29 December 2017. Retrieved 29 December 2017.
- ^ a b "Restore using mount". restic.readthedocs.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "Caching". restic.readthedocs.io. 29 December 2017. Retrieved 29 December 2017.
- ^ "Restic and Backups (Done Right)". gotime.fm. 1 June 2017. Retrieved 29 December 2017.
- ^ "Hi! I'm Filippo Valsorda". blog.filippo.io. Retrieved 29 December 2017.
- ^ "Restic Cryptography". blog.filippo.io. 29 August 2017. Retrieved 29 December 2017.
- ^ "A Solution to the Backup Inconvenience". media.ccc.de. 23 August 2015. Retrieved 29 December 2017.
- ^ "restic - Backups mal richtig". media.ccc.de. 29 June 2016. Retrieved 29 December 2017.
External links
[edit]Category:2015 software Category:Backup software for Linux Category:Free backup software Category:Go (programming language) software Category:Software using the BSD license