Published in



Restic Backup I — Simple and beautiful backups

restic — Backups done right!


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 Backup I — Simple and beautiful backups (this post)
Restic Backup II — In action
Restic Backup III — How to setup
Restic Backup IV — Real-life examples


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!)

… a centrally managed backup solution to backup VMs on storage appliance level. If you need the ability to restore single VMs or systems that consist of multiple VMs take a look at Veeam or Rubrik.

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 snapshots overview

Basic concept

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
  • de-duplication
  • encryption
  • 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
raw backup storage size
effective repository size on disk due to de-duplication

Last Words

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.





Everything connected with Tech & Code. Follow to join our 900K+ monthly readers

Recommended from Medium

How to configure TravisCI free for multi project repos

May Long Contest Editorial

From zero to app in under 10 days | The story of Flutter Pakistan mobile application

Testnet 7.0 — Release notes

What are Lisp macros good for, anyway?

Coding a chatbot builder platform, Part 1: How to make a dumb chatbot

The Manifesto Part I

Server Memory: RDIMM vs LRDIMM and When to Use Them

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Remo Hoeppli

Remo Hoeppli

Remo Höppli is co-founder and software engineer at Earlybyte. He is a technology enthusiast and minimalism advocate striving for simplicity and efficiency.

More from Medium

Starting stopped docker container


Why and how to start to learn Docker

Standalone within Docker container