avatarRemo Hoeppli

Summary

The web content introduces restic, a simple, versatile, and open-source backup solution written in Go, which is praised for its ease of use, powerful features, and suitability for advanced users and server environments.

Abstract

The article is the first in a series about restic, a backup tool that offers simplicity and beauty in file backup operations. It emphasizes restic's ease of installation, configuration, and its compatibility with various operating systems and storage backends. The author, Remo Höppli, shares his appreciation for restic's straightforwardness and the peace of mind it provides for backing up his Linux servers. While acknowledging that restic may not be the right choice for everyone, particularly those needing centralized VM backups or system image creation, Höppli highlights restic's strengths, such as incremental backups, de-duplication, encryption, and policy-based retention. The article also mentions tools like Resticker and k8up for integrating restic with Docker and Kubernetes, and it promises to delve into restic's usage and features in subsequent posts.

Opinions

  • Restic is not suitable for everyone, particularly those needing VM-level backups or system image creation.
  • Restic is ideal for advanced users familiar with the command line and for backing up systems where data integrity is paramount over system state.
  • The author suggests alternatives like Veeam, Rubrik, Acronis True Image, Time Machine, Déjà Dup, and Duplicati for those who require different backup functionalities.
  • Restic is commended for its key features, including incremental backups, de-duplication, encryption, and repository corruption checks.
  • The author expresses a personal preference for restic and its ability to provide reliable backups for non-mission-critical Linux servers.
  • Höppli encourages following him for updates on future blog posts about restic.

CODEX

Restic Backup I — Simple and beautiful backups

restic — Backups done right!

TL;DR

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 set up Restic Backup IV — Real-life examples

Introduction

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.

References

Restic
Backup
Docker
Linux
Data Safety
Recommended from ReadMedium