Installing Restic
Restic is one static binary. There is no installer wizard, no service, and nothing to configure after placing the file somewhere on your path. This is the easiest install in the whole series, and it is worth doing carefully anyway, because which restic you install decides how old it is.
The choices, honestly
- Your distribution's package
(
apt install restic,dnf install restic,brew install restic, orwinget install restic.resticon Windows). Convenient, signed, updated with the system — and often several releases behind the project. For a tool whose repository format is stable, an older binary still reads and writes the same repositories; you mainly miss newer features and fixes. - The official binary from the project's GitHub releases — a single compressed file per platform. This is what the lab used: restic 0.18.1, the current release on build day, downloaded, decompressed, made executable, and run in place.
- Built into another machine: most NAS and backup appliances that speak restic bundle their own copy; check its version before trusting it with a repository the newer binary created.
Check what you ended up with:
restic version
Check: it prints a version line, like the
lab's (transcript t00):
restic 0.18.1 compiled with go1.25.1 on linux/amd64
Self-update, and its limit
Binaries obtained from the project can update themselves:
restic self-update
Package-manager installs generally cannot (the files are owned by the package system), and restic will tell you so rather than failing quietly. Either way, updating is a convenience, not a chore to schedule: repositories are compatible across a wide range of versions, and this guide's commands are stable across them.
Windows and macOS notes
The same binary exists for both, and every
command in this guide works there with two
adjustments: paths use the local spelling
(C:\Users\you\Documents rather than
/home/you/documents), and giving the
password through an environment variable
uses the local shell's syntax
($env:RESTIC_PASSWORD in PowerShell,
set RESTIC_PASSWORD= in the old Command
Prompt). Scheduling differs — Task
Scheduler instead of cron — everything
else in the guide is identical.
What the lab did
Downloaded the official Linux amd64 binary of 0.18.1, verified it ran, and put it on the path of an ordinary working folder. No repository, no data, and no other machine was involved yet. Chapter 4 creates the first repository — slowly, because the decisions in it (where it lives, what its password is, how the password reaches restic) are the ones a real setup lives with for years.