Открыть сервисСервис

Резервное копирование сервера

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

Способы резервного копирования

Полное резервное копирование

При полном бэкапе создаётся копия всех данных сервера. Такой подход обеспечивает максимальную полноту восстановления, но требует много места и времени.

Инкрементальное копирование

При инкрементальном подходе сохраняются только те данные, которые изменились с момента последнего резервного копирования. Объём таких бэкапов значительно меньше полных.

Дифференциальное копирование

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

Способы создания резервных копий

Через панель управления хостинга

Большинство хостинг-провайдеров предоставляют встроенную функцию резервного копирования в панели управления (ISPmanager, HestiaCP, cPanel, Plesk). Обычно это выглядит как кнопка «Создать резервную копию» или «Бэкап» в разделе управления файлами или сервером. Некоторые провайдеры выполняют автоматические ежедневные или еженедельные бэкапы и предоставляют доступ к ним через панель.

Через SSH и утилиты командной строки

При доступе по SSH резервное копирование выполняется с помощью системных утилит:

  • tar — упаковка файлов и каталогов в архив с сохранением прав доступа:

`` tar -czvf backup.tar.gz /var/www ``

  • rsync — синхронизация данных с удалённым сервером или локальным хранилищем:

`` rsync -avz /var/www user@remote-server:/backups/ ``

  • mysqldump / pg_dump — выгрузка баз данных MySQL/PostgreSQL:

`` mysqldump -u root -p --all-databases > all_databases.sql ``

  • dd — создание полного образа диска:

`` dd if=/dev/sda of=/dev/sdb bs=4M ``

Через панель управления VPS-сервером

При аренде VPS у провайдера (Timeweb, REG.RU, Beget, Selectel, RuVDS и других) резервное копирование часто доступно в личном кабинете провайдера. Функция может называться «Снапшот», «Снимок диска» или «Резервная копия». Снимок диска фиксирует состояние сервера в определённый момент и позволяет откатиться к нему при необходимости.

Что обычно включают в резервную копию

КомпонентСпособ копирования
Файлы сайтаtar, rsync, архив через панель
Базы данныхmysqldump, pg_dump, встроенная функция панели
Конфигурации сервераАрхивирование каталогов /etc, конфигов Nginx/Apache
Почтовые ящикиКопирование каталогов почтового сервера
Полный образ дискаdd, снапшот виртуального диска

Хранение резервных копий

Рекомендуемое правило — правило 3-2-1: три копии данных, на двух разных носителях, одна из которых находится вне основного сервера. В качестве удалённого хранилища используют:

Хранение бэкапов на том же сервере, что и основные данные, считается небезопасным: при выходе диска из строя или компрометации сервера копии будут потеряны вместе с оригиналами.

Автоматизация резервного копирования

Для регулярного создания бэкапов используют планировщик задач cron. Пример ежедневного бэкапа в 3 часа ночи:

`` 0 3 * tar -czf /backups/site-$(date +\%F).tar.gz /var/www ``

Также существуют специализированные инструменты: Restic, BorgBackup, Duplicity, Rsnapshot — они поддерживают шифрование, дедупликацию и отправку копий в удалённые хранилища.

Восстановление из резервной копии

Процесс восстановления зависит от способа создания бэкапа:

  • через панель хостинга — раздел «Восстановление из резервной копии», где выбирается дата и нужные файлы или базы;
  • через tar — распаковка архива на сервер:

`` tar -xzvf backup.tar.gz -C / ``

Перед восстановлением рекомендуется убедиться в целостности архива и наличии свободного места.

Частые ошибки

  • Отсутствие регулярности: бэкап делается «на всякий случай» и оказывается устаревшим.
  • Хранение копий только на сервере.
  • Отсутствие проверки восстановления: копия создаётся, но ни разу не тестировалась.
  • Неполный охват: забывают сконфигурировать базы данных или почтовые ящики.
  • Использование одного и того же пароля для доступа к хранилищу бэкапов и серверу.

Источники:

  • Документация GNU tar
  • Документация rsync
  • Документация Rsync и BorgBackup
  • Руководства хостинг-провайдеров по резервному копированию (Timeweb, REG.RU, Beget)
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru