Backup — что это и как правильно делать резервные копии | Глоссарий FREEHOSTING

backup

backup — Backup — резервная копия данных, хранящаяся отдельно от оригинала, чтобы пережить поломку диска, удаление файла, шифровальщик или ошибку администратора. Базовое правило 3-2-1: три копии на двух типах носителей, одна — за пределами площадки.

Определение простыми словами

Backup — это страховка от потери данных. Жёсткие диски сыпятся, RAID не спасает от удаления, шифровальщик за минуту делает бесполезной всю файловую систему, а сотрудник может случайно удалить важную таблицу. Резервная копия — отдельная, желательно недоступная для записи с боевого сервера, к которой можно вернуться, если что-то пошло не так.

Канон индустрии — правило 3-2-1: минимум три копии данных, на двух разных типах носителей (например, диск + облако), и одна копия за пределами основной площадки. Без выноса наружу любая авария дата-центра, пожар или массовое шифрование уничтожит и оригинал, и бэкап.

Сравнение

Тип бэкапа Объём Время восстановления Когда использовать
Full 100% данных Быстро, из одного архива Раз в неделю/месяц как база
Incremental Только новые/изменённые Дольше: цепочка копий Ежедневно поверх Full
Differential Изменения с последнего Full Среднее: Full + 1 архив Компромисс между Full и Incremental
Snapshot Указатель на блоки Мгновенное Защита от ошибки в БД, не от потери диска
Репликация 100% непрерывно Мгновенное HA, но не защищает от удаления

Кейсы использования

  • Сайт на VPS. Ежедневный rsync + БД-дамп в S3-хранилище и недельный полный архив на отдельный диск.
  • База 1С. Холодный бэкап раз в день + горячий лог транзакций каждые 15 минут — RPO 15 минут.
  • Личный ноутбук. Time Machine на NAS + шифрованный Restic в облако.
  • Корпоративная инфраструктура. Veeam или Proxmox Backup Server для виртуалок, отдельная площадка для DR-копий.
  • Когда «бэкап» не бэкап: RAID, репликация и snapshot — не защита от удаления и шифровальщика. Удалили базу — она реплицируется и удалится на втором узле. Snapshot живёт на том же диске и пропадёт вместе с ним.

Технические детали

Простой rsync-скрипт с ротацией для VPS:

#!/bin/bash
DATE=$(date +%Y-%m-%d)
mysqldump --all-databases | gzip > /backup/db-$DATE.sql.gz
rsync -aH --delete /var/www /backup/www/
restic -r s3:s3.amazonaws.com/my-bucket backup /backup
restic -r s3:s3.amazonaws.com/my-bucket forget --keep-daily 7 --keep-weekly 4 --keep-monthly 6 --prune
find /backup -name "db-*.sql.gz" -mtime +14 -delete

Главное правило: бэкап считается рабочим только после успешного теста восстановления. Раз в квартал разворачивайте копию на отдельной машине и проверяйте, что данные читаются и сервис стартует. Под удалённое хранение подойдёт storage-VPS или объектное S3, под локальное — VPS на HDD с большим диском.

Частые вопросы

Чем бэкап отличается от RAID?

RAID защищает от поломки одного диска, но не от удаления файла, ошибки админа, шифровальщика или сбоя файловой системы. Бэкап — копия в отдельном месте, к которой можно откатиться. Это разные задачи, нужны оба.

Как часто делать бэкап?

Зависит от RPO — сколько данных не страшно потерять. Сайт-визитка — раз в неделю. Активный блог — ежедневно. Интернет-магазин — каждые 1–4 часа. Боевая 1С — каждые 15 минут с журналом транзакций.

Где хранить резервные копии?

Минимум на двух носителях: один — рядом для быстрого восстановления (storage-VPS), второй — географически удалённо (S3, отдельный ДЦ, домашний NAS). Хранение бэкапа на том же сервере — это не бэкап.

Что такое RTO и RPO?

RTO (Recovery Time Objective) — за сколько вы готовы поднять сервис после аварии. RPO (Recovery Point Objective) — сколько последних минут/часов данных можно потерять. Оба параметра задают частоту и тип бэкапов.