Restic — консольная утилита с открытым исходным кодом, предназначенная для создания резервных копий файлов и каталогов. Утилита отличается высокой скоростью работы, простотой настройки и безопасностью хранения данных. Это позволяет использовать её для резервного копирования серверов, виртуальных машин, рабочих станций и персональных компьютеров. Restic автоматически выполняет дедупликацию данных, сохраняя только новые или изменившиеся блоки файлов. Это уменьшает объём занимаемого дискового пространства и сокращает время создания последующих резервных копий. Все данные шифруются на стороне клиента до их записи в хранилище, поэтому даже при использовании удалённых или облачных сервисов содержимое резервных копий остается защищённым.
Программа поддерживает хранение резервных копий на локальных дисках, сетевых ресурсах, по протоколу SFTP, а также в различных облачных хранилищах, совместимых с Amazon S3, Backblaze B2, Microsoft Azure Blob Storage, Google Cloud Storage и другими сервисами.
Поскольку Restic представляет собой один исполняемый файл и не требует установки дополнительных серверных компонентов, его удобно использовать как на небольших VPS, так и в крупных инфраструктурах. При этом поддержка снимков (snapshots) позволяет восстановить как отдельные файлы, так и состояние данных на определённый момент времени.
В статье разберём, как установить Restic на виртуальный сервер, работающий под управлением Ubuntu или Debian.
Установка из официального репозитория
Самый простой способ инсталляции Restic на Ubuntu или Debian — установка из официального репозитория.
Обновите списки пакетов в системе:
$ sudo apt update
Затем запустите установку с использованием менеджера пакетов APT:
$ sudo apt install restic
По окончании установки проверьте версию установленного пакета:
$ restic version
В нашем примере в систему была установлена версия 0.18.0.

Установка последней версии с GitHub
Версия Restic, доступная в официальных репозиториях Ubuntu и Debian, может отличаться от актуальной версии, опубликованной разработчиками. Поэтому для получения последних исправлений и обновлений рекомендуется устанавливать Restic из официальных релизов на GitHub.
Перейдите в каталог /tmp:
$ cd /tmp
Откройте браузер, перейдите на страницу релизов Restic на GitHub и скопируйте ссылку на загрузку архива, содержащего дистрибутив актуальной версии для Linux-систем.

Затем с помощью утилиты wget и скопированной ссылки загрузите архив в текущий каталог:
$ wget https://github.com/restic/restic/releases/download/v0.19.1/restic_0.19.1_linux_amd64.bz2
Для распаковки bzip2-архива требуется утилита bunzip2, которой изначально нет образах Ubuntu и Debian. Чтобы получить данную утилиту, обновите список пакетов и установите в систему пакет bzip2:
$ sudo apt update
$ sudo apt install bzip2
После чего распакуйте полученный архив:
$ bunzip2 restic_0.19.1_linux_amd64.bz2
Извлечённый из архива файл сделайте исполняемым:
$ chmod +x restic_0.19.1_linux_amd64
Затем переместите извлечённый из архива исполняемый файл в стандартный каталог для пользовательских программ с сохранением его под именем restic:
$ sudo mv restic_0.19.1_linux_amd64 /usr/local/bin/restic
Теперь Restic можно запускать из любого каталога, не указывая полный путь к программе. Чтобы убедиться в этом, проверьте версию утилиты:
$ restic version
Вывод команды показывает, что версия, установленная из GitHub, является более свежей по сравнению с версией, проинсталлированной при помощи пакетного менеджера APT.

Для большинства VPS, работающих на Ubuntu или Debian, рекомендуется устанавливать Restic из официальных релизов GitHub. Это позволяет использовать последние возможности, исправления ошибок и обновления безопасности сразу после их выпуска.
