Коротко о главном
Резервная копия нужна не для отчёта, а для восстановления. Ошибка новичка — делать копию на тот же диск и ни разу не проверять её. Ниже — практическая схема для домашнего сервера и небольшой инфраструктуры.
Диски выходят из строя, обновления ломают конфигурацию, а ошибка администратора удаляет данные быстрее любого злоумышленника. Регулярный и проверенный бэкап — единственная страховка.
Резервное копирование редко ломается сам по себе. Чаще проблема в неверной конфигурации, устаревшей версии или команде, скопированной без понимания. Разберём типичные сбои и способы их исправления.
Почему это происходит
Ошибки почти всегда связаны с контекстом: другая версия пакета, не тот пользователь, устаревший конфиг или команда из руководства для другой системы. Резервное копирование не исключение. Поэтому сначала фиксируем исходное состояние, затем меняем одну вещь за раз.
Типичные ошибки
Ниже — сбои, которые встречаются чаще всего. Перед исправлением сохраните текущие конфиги и запишите, какие изменения вносите: так проще откатиться.
1. Бэкап есть, но восстановить нельзя
Проверяйте восстановление регулярно. Ошибка прав, пароля или версии инструмента обнаруживается только на тесте.
2. Репозиторий разросся
Настройте политику forget/prune и проверьте, не попадают ли в копию кэши и логи.
3. Задание не запускается
Проверьте таймер, путь к скрипту, окружение и права. Cron не читает ваш .bashrc.
Как настроить правильно
Правильная последовательность проста: проверить версию и зависимости, сделать резервную копию конфигурации, внести минимальное изменение, проверить логи и только потом двигаться дальше.
Установка
В Debian, Ubuntu и Linux Mint используется пакетный менеджер APT:
sudo apt install rsync restic borgbackup
В Fedora и RHEL-совместимых системах пакет ставится через DNF:
sudo dnf install rsync restic borgbackup
В Arch Linux и производных пакет доступен в официальных репозиториях:
sudo pacman -S rsync restic borg
1. Определите, что защищаете
Начните с данных, без которых система не восстановится: домашние каталоги, конфиги, базы. Не копируйте кэши и временные файлы.
du -sh /home /etc /var/lib/postgresql
2. Сделайте первую копию
Restic создаёт зашифрованный репозиторий с инкрементальными снапшотами. Пароль храните отдельно от репозитория.
restic init --repo /backup/restic
restic backup /home /etc --repo /backup/restic
3. Настройте расписание
systemd-таймер или cron запускает бэкап регулярно. Проверьте, что задание действительно выполняется.
systemctl list-timers --all
journalctl -u restic-backup -n 50
4. Проверьте восстановление
Восстановите несколько файлов в отдельный каталог и сравните контрольные суммы. Это обязательный шаг.
restic restore latest --target /tmp/restore --include /home/user/Documents
ls -la /tmp/restore
Рабочий конфиг
Начните с минимального рабочего варианта. Не копируйте большой конфиг целиком: добавляйте параметры по одному и проверяйте результат после каждого изменения.
# restic environment
RESTIC_REPOSITORY=/backup/restic
RESTIC_PASSWORD_FILE=/root/.restic-pass
Практические советы
Эти рекомендации проверены на повседневных задачах. Начните с тех, которые закрывают вашу текущую боль, а не со всего списка сразу.
Совет 1. Шифруйте бэкапы, если они покидают доверенный носитель.
Шифруйте бэкапы, если они покидают доверенный носитель.
Совет 2. Храните пароль восстановления отдельно от данных.
Храните пароль восстановления отдельно от данных.
Совет 3. Ограничивайте срок хранения снапшотов, чтобы не разрастался репозитори
Ограничивайте срок хранения снапшотов, чтобы не разрастался репозиторий.
Совет 4. Проверяйте целостность через restic check.
Проверяйте целостность через restic check.
Профилактика
Большинство повторяющихся сбоев с Резервное копирование связано не с ошибкой в самой программе, а с окружением: обновились зависимости, изменился путь, закончилось место или другой администратор поправил конфиг. Поэтому профилактика начинается с фиксации исходного состояния.
Сохраните рабочий конфиг в систему контроля версий, добавьте короткий комментарий о том, зачем нужен каждый нестандартный параметр, и запишите команду проверки. Через месяц вы скажете себе спасибо: восстановить логику по чужому файлу без пояснений почти невозможно.
Чек-лист
- Версия пакета и конфигурация зафиксированы и доступны для сравнения.
- Есть автоматическая проверка синтаксиса перед перезапуском службы.
- Журналы ротуются, а диск не заполняется ими за неделю.
- Изменения проходят через тестовый стенд, а не сразу на рабочий сервер.
Итог
Большинство ошибок с Резервное копирование лечится не переустановкой, а проверкой конфигурации, логов и прав доступа. Действуйте по одному изменению за раз — и причина быстро найдётся.