Выберите продукт

Linux backups 2026: BorgBackup vs Restic vs Kopia для S3 и retention

Разбираем BorgBackup, Restic и Kopia для бэкапов Linux в 2026: дедупликация, шифрование, работа с S3, политики хранения и очистка prune/forget. Даем практичные команды, советы по защите от ransomware и обязательный restore test.
Linux backups 2026: BorgBackup vs Restic vs Kopia для S3 и retention

В 2026 году «просто сделать архив» уже не считается бэкапом. Нормальный бэкап на Linux — это дедупликация, шифрование на клиенте, проверка целостности, понятная retention policy и регулярный restore test. А ещё — вывоз копий в удалённое хранилище (часто S3-совместимое), чтобы пережить не только случайное удаление, но и компрометацию сервера.

Ниже — практичный разбор BorgBackup vs Restic vs Kopia с фокусом на эксплуатацию: как выбрать инструмент под свой сценарий, как не «съесть» историю неправильной очисткой (prune/forget) и что реально нужно прописать в регламенте.

Критерии выбора в 2026: что важно именно админам

Перед сравнением — чеклист, который обычно решает исход «битвы тулов» сильнее, чем синтетические бенчмарки:

  • Модель данных: файловый бэкап (/etc, /home, проекты) или «сначала снапшот тома/ФС, потом вывоз» (VM, базы, контейнеры).
  • Дедупликация и компрессия: экономия места на длинной истории и при частых инкрементах.
  • Шифрование: обязательно при выносе за пределы сервера; важно, чтобы оно происходило до сети.
  • Бэкенды: локальный диск, SSH-репозиторий, S3-совместимое объектное хранилище.
  • Retention policy: «сколько храним» плюс «как чистим», без сюрпризов.
  • Проверяемость: команды check/verify и возможность регулярно делать restore test на отдельный каталог/VM.
  • Защита от ransomware: минимальные права, иммутабельность на стороне хранилища, второй контур, мониторинг.

Короткая характеристика: BorgBackup, Restic, Kopia

Все три инструмента умеют шифрованные инкрементальные бэкапы с дедупликацией. Разница — в «родных» сценариях и удобстве эксплуатации.

BorgBackup

Borg — классика для Linux/Unix: зрелый, предсказуемый, обычно используется для репозитория на файловой системе (локально или на удалённом сервере по SSH). Сильные стороны — эффективность дедупликации/компрессии и понятное обслуживание репозитория.

Про S3: исторически это не основной сценарий Borg. Обычно добавляют промежуточный слой (например, «смонтировать объектное хранилище как ФС»), что усложняет схему и повышает риск проблем с консистентностью и производительностью. Если вам критичен именно S3, Borg обычно не первый кандидат.

Restic

Restic — один из самых «S3-friendly» инструментов: объектные репозитории — штатный режим. Он хорошо ложится на модель «одна команда — бэкап в S3», а управление историей делится на forget и prune.

Обратная сторона: на крупных репозиториях очистка и «листинги» могут быть дорогими по времени и по количеству операций в объектном хранилище. Это решается регламентом (как часто чистим) и наблюдаемостью (метрики времени/ошибок/роста).

Kopia

Kopia — более «политико-ориентированная» система: много настроек под разные пути/наборы данных, гибкие политики хранения, удобные команды. Как и Restic, нормально живёт с S3-совместимыми бэкендами, но часто выигрывает, когда хочется «разным данным — разные правила» без сложной обвязки.

Цена гибкости — дисциплина: нужно документировать политики и договориться в команде, как именно вы называете снапшоты, что исключаете и как проверяете восстановление.

Схема: сначала снапшот тома/ФС, затем вывоз данных в репозиторий бэкапа

Снапшот (snapshot) как часть стратегии бэкапа

Термин snapshot часто путают. В Linux-бэкапах важно разделять два слоя:

  • Снапшот файловой системы/тома (LVM, Btrfs, ZFS): консистентный «срез» данных на момент времени. Отлично для БД/VM/контейнеров, но сам по себе не является offsite-бэкапом.
  • Снапшот в смысле инструмента бэкапа (Borg/Restic/Kopia): точка восстановления как набор ссылок на зашифрованные дедуплицированные чанки.

Практичный паттерн для продакшена: сначала обеспечить консистентность (снапшот LVM/Btrfs/ZFS или прикладные хуки/дамп), затем вывозить уже «срез» в репозиторий. Так вы снижаете шанс получить «полубэкап».

Если вы бэкапите базы, полезно отдельно разобрать PITR-стратегию: для PostgreSQL — WAL, для MySQL/MariaDB — binlog. По теме пригодятся материалы: PITR PostgreSQL через WAL: бэкап и восстановление и PITR MySQL/MariaDB через binlog/GTID.

FastFox VDS
Облачный VDS-сервер в России
Аренда виртуальных серверов с моментальным развертыванием инфраструктуры от 195₽ / мес

S3 backup: что меняется в эксплуатации по сравнению с SSH/диском

S3-совместимое хранилище — удобный offsite-контур, но у него своя специфика:

  • Много мелких объектов: дедуплицированные репозитории — это тысячи/миллионы объектов. Это нормально, но влияет на листинг и очистку.
  • Стоимость операций: платите не только за гигабайты, но и за запросы. Частые тяжёлые prune на больших репозиториях — типичный «скрытый счёт».
  • Сеть и ретраи: важны докачка, устойчивость к временным ошибкам и корректные таймауты.
  • Иммутабельность: если на стороне хранилища есть WORM/Object Lock — это сильный плюс против шифровальщиков. Если нет — компенсируйте правами доступа и вторым контуром.

В S3-сценарии чаще всего выбирают Restic или Kopia. Borg чаще берут, когда основной контур — SSH-репозиторий на отдельном сторидж-сервере, и S3 не является требованием.

Если вы планируете держать веб-проекты на сервере и выносить бэкапы в S3, заранее проверьте: есть ли отдельные ключи только на запись, можно ли включить версионирование/«корзину», и как вы будете мониторить рост репозитория. Для небольших сайтов/проектов иногда удобнее начинать с виртуального хостинга и выстроить бэкап-стратегию до переезда на выделенные ресурсы; для продовых задач чаще выбирают VDS, где проще контролировать агента, расписания и ключи.

Retention policy на практике: как не потерять нужные точки

Большинство инцидентов «бэкапы были, но восстановиться не смогли» упирается в две вещи: неверная политика хранения и отсутствие регулярного restore test.

Админский минимум для retention policy:

  • Частые точки для быстрых откатов (например, почасовые или ежедневные).
  • Средняя глубина на случай «тихой порчи» или позднего обнаружения (несколько недель).
  • Длинная история для редких, но критичных сценариев (месяцы/кварталы).

Важно: retention — это не только «сколько храним», но и как чистим. В S3 очистка может быть тяжёлой по операциям, поэтому часто разумнее чистить реже, но предсказуемо (например, раз в неделю/месяц), и держать метрики: размер репозитория, время prune, количество ошибок.

Почему все путают forget и prune

В Restic (и концептуально в других инструментах) это две разные операции:

  • forget — удалить точки восстановления согласно политике (логически «забыть» снапшоты).
  • prune — физически удалить неиспользуемые данные (чанки) и реально освободить место.

Типичная ошибка — делать жёсткую очистку слишком часто и без мониторинга, а затем ловить долгие операции или рост затрат на S3. Другая крайность — делать только forget: история исчезла, а место не освобождается.

Пример «скелета» команд для Restic (адаптируйте под свой источник и расписание):

restic -r s3:s3.amazonaws.com/bucket/repo backup /etc /home
restic -r s3:s3.amazonaws.com/bucket/repo forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12
restic -r s3:s3.amazonaws.com/bucket/repo prune
restic -r s3:s3.amazonaws.com/bucket/repo check

Обратите внимание: адреса в примере приведены как шаблон. В реальной конфигурации используйте ваш S3-эндпоинт и способ аутентификации, принятый в инфраструктуре.

FastFox SSL
Надежные SSL-сертификаты
Мы предлагаем широкий спектр SSL-сертификатов от GlobalSign по самым низким ценам. Поможем с покупкой и установкой SSL бесплатно!

Проверка бэкапов: restore test — не опция

Если вы делаете бэкап и ни разу не делали restore test, вы не знаете, существует ли восстановление. Минимальный рабочий процесс теста:

  1. Выделить отдельный каталог или отдельную тестовую VM/контейнер.
  2. Восстановить выбранный снапшот (не только самый свежий, но и «недельной давности»).
  3. Проверить целостность: ожидаемые файлы, хэши, возможность запуска приложения или чтения дампа БД.
  4. Зафиксировать время восстановления (RTO) и потенциальную потерю данных (RPO).

Полезная практика: раз в месяц автоматизировать восстановление хотя бы критичных конфигов (/etc) и одного типового проекта в отдельный каталог, затем прогонять минимальные проверки (например, наличие ключевых файлов, успешный старт тестового контейнера).

Ransomware protection: что реально помогает, кроме «шифрования»

Шифрование репозитория обязательно, но от шифровальщика на сервере само по себе не спасает: вредонос может удалить бэкапы или испортить репозиторий, если имеет доступ.

Рабочие практики защиты, которые чаще всего дают реальный эффект:

  • Раздельные учётные данные: ключи только на запись, без прав удаления, если бэкенд это позволяет.
  • Иммутабельность: Object Lock/WORM на 7–30 дней (или хотя бы версионирование и «корзина» на стороне хранилища).
  • Изоляция: бэкап-агент не должен иметь «админские» права на весь бакет/все репозитории.
  • Второй контур: отдельный репозиторий, обновляемый реже (например, недельный), с другим ключом.
  • Наблюдаемость: алерты на отсутствие свежих снапшотов, ошибки check/verify, резкое увеличение объёма или времени бэкапа.

Если вы хотите «попроще», начните с принципа: один репозиторий для частых бэкапов и второй «холодный» для редких контрольных копий. Это дисциплинирует и сильно повышает шанс пережить компрометацию.

Процесс restore test: восстановление снапшота на отдельную VM и проверка работоспособности

Сравнение по сценариям: что выбрать в 2026

Сценарий 1: бэкап на отдельный сервер по SSH (классический offsite)

Если у вас есть выделенный сторидж-сервер (или отдельная машина в другом ДЦ) и нужен понятный поток по SSH — Borg исторически очень силён. Вы контролируете файловую систему репозитория, проще планировать обслуживание и прогнозировать поведение.

Если вы строите схему вокруг SSH и rsync-подхода (деплой, синхронизация, бэкапы), может пригодиться: практика rsync по SSH для деплоя и бэкапов.

Сценарий 2: S3 как основной удалённый репозиторий

Если ваш целевой бэкенд — S3-совместимое хранилище, чаще всего выбор между Restic и Kopia: они «родные» для объектной модели. Дальше решают детали: минимализм и простота Restic против более гибких политик Kopia.

Сценарий 3: много небольших проектов на одном хосте

Тут важны автоматизация, быстрый инкремент, понятная очистка и удобное восстановление по одному проекту. Restic часто выигрывает простотой команд, Kopia — удобством раздельных политик «из коробки».

Сценарий 4: акцент на «сначала снапшот, потом вывоз» (VM, БД, контейнеры)

В таких схемах инструмент бэкапа — второй слой. На первом слое вы обеспечиваете консистентность снапшотом LVM/Btrfs/ZFS или прикладными хуками/дампами. А потом Borg/Restic/Kopia вывозят данные в репозиторий. Важнее не «кто быстрее», а насколько удобно интегрировать в пайплайн, логировать, алертить и регулярно проверять восстановление.

Эксплуатационные нюансы: обслуживание репозитория

Что стоит заложить в регламент независимо от выбранного инструмента:

  • Проверка целостности по расписанию (check/verify) и реакция на ошибки.
  • Контроль роста: размер, время бэкапа, время очистки, число объектов (для S3).
  • Ротация секретов: ключи доступа к бэкенду, пароль/ключ шифрования, место хранения секретов и процедуру восстановления доступа.
  • Отдельные логи и алерты: «нет свежего бэкапа», «ошибка prune», «ошибка проверки».

И отдельно: не складывайте «снапшот провайдера» и «ваш независимый бэкап» в одну корзину. Снапшот диска полезен для быстрого отката после неудачного обновления, но как единственный контур хуже защищает от компрометации.

Быстрый вывод

  • BorgBackup — отличный выбор, когда ваш основной сценарий: репозиторий на файловой системе (локально или по SSH), нужна зрелость и предсказуемость.
  • Restic — часто лучший «первый выбор» для S3-бэкапов и простого управления репозиториями в объектном хранилище.
  • Kopia — хороший вариант, когда хочется S3-ориентированности как у Restic, но с более гибкими политиками и настройками под разные данные.

Какой бы инструмент вы ни выбрали, два правила неизменны: задайте внятную retention policy (и понимайте разницу между forget и prune) и поставьте регулярный restore test на поток.

Поделиться статьей

Вам будет интересно

Redis vs KeyDB vs Dragonfly в 2026: лицензия, репликация, persistence и выбор под VDS OpenAI Статья написана AI (GPT 5)

Redis vs KeyDB vs Dragonfly в 2026: лицензия, репликация, persistence и выбор под VDS

Сравниваем Redis, KeyDB и Dragonfly в 2026 с точки зрения админа: лицензирование, совместимость, репликация и persistence (RDB/AOF ...
Tuned vs cpupower vs systemd CPUQuota: управление CPU в Linux без сюрпризов OpenAI Статья написана AI (GPT 5)

Tuned vs cpupower vs systemd CPUQuota: управление CPU в Linux без сюрпризов

Админы часто «настраивают CPU», но делают разные вещи: меняют cpufreq/governor через cpupower, применяют системные профили tuned и ...
S3-compatible vs Ceph RGW vs OpenStack Swift: сравнение object storage в 2026 OpenAI Статья написана AI (GPT 5)

S3-compatible vs Ceph RGW vs OpenStack Swift: сравнение object storage в 2026

Практичный разбор S3-compatible API, Ceph RGW и OpenStack Swift в 2026: как различаются bucket/container модель, ACL и политики, v ...