Restic Backup I — Simple and beautiful backups
This blog post is the first of four posts about restic, a simple, beautiful, and extremely versatile file backup solution written in Go. It is very easy to install and configure and just works pretty neat out of the box. Even though restic backup is not for everyone, I quickly fell in love with its simplicity and enjoy the peace of mind it gives me when using it for backing up my Linux servers.
The restic blog post series
Restic is a very simple and powerful file-level backup solution that was written in go and is completely open-source. It is available for Linux, BSD, macOS, and Windows and can be used with a variety of different storage backends ranging from local storage, to SFTP, REST, S3 as well as Azure blob storage and Google cloud storage. Even though restic is awesome, it is also different from a lot of well-known backup software players such as Veeam, Acronis, or Backup Exec. To see the excellence of restic I find it important to emphasize what it is and even more important what it is not. Therefore, I think it is important to mention that restic might not be the right tool for everyone.
Restic is not …
(The following are my opinions and not final facts!)
Restic is not a backup software that is able to create system images that can be restored to new hardware. If you need this, use Acronis True Image.
Restic is not a backup software providing a GUI. I know there are already attempts by restatic to do so, but it doesn’t seem as at the point of writing there is anything ready to use for production. If you are a normal end-user that does not know how to use the command line, it might not be the right thing for you. If you need backup on macOS, go for Time Machine. If you need a backup for your Linux Desktop and you want a GUI, use Déjà Dup or Timeshift. If you need a backup for Windows you are basically screwed =) or just try Duplicati.
If you are still here, you might be very lucky and restic could be indeed the right tool for you! =)
Restic is …
… a backup solution that can be used on Desktop by more advanced users that know how to use a command line or on servers on which file-level backup is good enough.
Restic is the solution for backing up systems that care for the data and not the system itself, since the system can be fast recovered using stateless and automatic deployment.
Restic is the perfect solution for anybody looking for an easy and powerful backup for the one or two Linux servers we are hosting our services on, that might not be mission-critical but also have a demand for a perfectly working and highly reliable backup.
Restic can be installed using common packet managers of the various systems it can be used on. Therefore, no deep knowledge or complex planning is required to set up a backup using restic. To run backups regularly we usually make use of OS built-in tools such as cron or Windows Task Scheduler. I personally use it for backups on my Linux servers and since all of them usually run Docker I find it very convenient to use Resticker that comes as a ready-to-use docker-image that also includes everything to schedule your backups. Further, restic can be used in Kubernetes using k8up provided by VSHN.
Besides being very easy to use, which I cannot emphasize enough, restic comes with all the cool features of modern backup software. Such as …
- incremental backups
- checking the repository for corruption to ensure everything backed up can also be restored
- mounting all backup snapshots to the filesystem at ones
- tagging of backups to easier tell them apart
- diff of backup snapshots
- policy-based backup retention
These key-features sound great and are even greater in usage. My next blog post will be about how to use restic and show more cool things that restic can do for you. I’m pretty sure restic can give you peace of mind, knowing that your data is safe and can be restored at any time if something happens. If you liked this blog post, make sure to follow me and support my writing. Thanks for reading!
About the author
Remo Höppli is Co-Founder and Software Engineer at Earlybyte.
Earlybyte is an IT consultancy firm specialized in developing new digital solutions for companies around the world from digitalization to IoT solutions, close to the client and its business embracing agility.
Follow me on Twitter to get informed on new blog posts.
Remo Höppli - Co-Founder & Software Engineer - Earlybyte GmbH | LinkedIn
I'm a tech enthusiast working in my own Startup-Up company Earlybyte, which I founded with my study peers from ZHAW…
Restic is a modern backup program that can back up your files: from Linux, BSD, Mac and Windows to many different…