Restic — без подписок программа, злая находка
Категория: Облако и бэкап · Лицензия: BSD · Платформа: Windows / macOS / Linux (зависит от программы)
⬇ Скачать с официального сайтаRestic: бэкап, который нельзя испортить
Большинство систем резервного копирования устроены как слоёный пирог: полная копия, потом инкременты, потом инкременты от инкрементов. Восстановление превращается в сборку конструктора, а потеря одного звена в цепи убивает всё, что за ним. Restic избавляется от этой конструкции целиком.
Идея
Файлы режутся на блоки переменного размера по алгоритму content-defined chunking. Каждый блок хешируется и складывается в репозиторий один раз. Одинаковые куски данных — из разных файлов, разных машин, разных дней — хранятся в единственном экземпляре. Дедупликация происходит глобально по всему хранилищу.
Следствия приятные: каждый снимок выглядит полным и восстанавливается независимо, при этом занимает только реально новые данные. Двадцать бэкапов домашней папки за месяц могут занять чуть больше одного.
Шифрование
Не опция, а обязательное условие. Репозиторий шифруется AES-256 с аутентификацией Poly1305-AES ещё до отправки. Это значит, что хранилище можно держать где угодно — на чужом сервере, в дешёвом облаке, у знакомого в гараже — и содержимое там не прочтёт никто без пароля.
Куда складывать
- Локальный диск или сетевая шара.
- SFTP на любой сервер с SSH.
- Amazon S3 и всё S3-совместимое: MinIO, Backblaze B2, Wasabi, Yandex Object Storage.
- Google Cloud Storage, Azure Blob.
- Через rclone — ещё несколько десятков провайдеров, включая обычные потребительские облака.
- REST-сервер restic для собственной инфраструктуры.
Как выглядит работа
restic init --repo /mnt/backup
restic -r /mnt/backup backup ~/work
restic -r /mnt/backup snapshots
restic -r /mnt/backup restore latest --target /tmp/restore
Отдельно стоит команда check — она проверяет целостность репозитория и умеет перечитывать сами данные, а не только метаданные. Бэкап, который никогда не проверяли, бэкапом не является; здесь проверка встроена.
Политика хранения задаётся человеческим языком: оставить 7 дневных, 4 недельных, 12 месячных снимков. Команда forget --prune вычистит остальное и освободит место.
Ещё одна редкая возможность — restic mount. Репозиторий монтируется как файловая система, и вы просто ходите по папкам снимков в обычном файловом менеджере, копируя нужное мышкой.
Слабые места
Только командная строка, графической оболочки в официальном проекте нет (сторонние существуют). Операция prune на больших репозиториях требует времени и памяти. Написан на Go — один бинарник без зависимостей, но памяти на больших объёмах ест прилично.
Платформы
Linux, macOS, Windows, BSD, Solaris. Лицензия BSD, бесплатно, один исполняемый файл, который достаточно положить в PATH.
⬇ Скачать с официального сайта| Название | Restic |
| Категория | Облако и бэкап |
| Лицензия | BSD |
| Официальный сайт | https://restic.net/#installation |
| Цена | 0 ₽ — программа бесплатная |
| Языки | Русский, английский и десятки других (зависит от сборки) |
