RU|EN

Помощь

Восстановление данных из бэкапов услуги «Резервное копирование» на серверах без панели управления

Услуга «Резервное копирование» позволяет работать с бэкапами как на серверах с панелью управления ISPmanager, так и без неё — на VPS c операционными системами Ubuntu, Centos и Debian и их версиями. 

Инструкция по восстановлению требует навыков работы с командной строкой. Если у вас нет возможности восстановить копию своими силами, напишите нам в Личном кабинете — раздел «Поддержка», «Запросы». Мы поможем развернуть нужный бэкап.

Если с ISPmanager процесс восстановления резервных копий выполняется в самой панели и достаточно прост, то без панели восстанавливать копии необходимо вручную, подключившись к серверу по SSH или VNC.

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

В рамках услуги «Резервное копирование» создаются полные (еженедельные) копии и дифференциальные (ежедневные) копии. Они отличаются по смыслу и содержанию.

Архив с полной копией содержит все файлы, которые содержались в копируемых директориях на момент создания бэкапа. Первый раз он создаётся после подключения услуги по расписанию, далее — каждую неделю по воскресеньям. Чтобы его было легко отличить от дифференциальной копии, в начало имени архива добавлена буква «F» (full).

Архив с дифференциальной копией содержит копии файлов, которые изменились с момента создания последнего полного бэкапа. Он создаётся ежедневно с понедельника по субботу. Для отличия от архива с полной резервной копией в начале имени дифференциального архива добавлена буква «I» (incremental).

Дифференциальные копии привязаны к полным. Чтобы восстановить данные за определённую дату, сначала нужно развернуть последнюю полную копию (за последнее воскресенье до нужной даты). После этого — поверх с заменой распаковать дифференциальный архив.

Чтобы при создании резервных копий не расходовалось место на диске, копии на сервере создаются фрагментами по 100 Мб — «слайсами». После создания фрагмента копии он загружается на внешнее хранилище и удаляется с локального диска вашего сервера, чтобы не занимать дисковое пространство. Далее начинается создание следующего слайса, и так по кругу, пока копия не будет полностью сохранена на удалённом хранилище. Это позволяет минимизировать потребление ресурсов сервера — места на диске, сетевого трафика.

Инструкция по восстановлению

Так как после загрузки резервной копии в хранилище она остаётся разбита на фрагменты, перед восстановлением необходимо собрать её воедино. Лучший инструмент для этого — утилита isptar от разработчиков панели ISPmanager — компании ISPsystem. Он поможет автоматически собрать и распаковать разбитую на слайсы копию, но для начала нужно загрузить бэкап на сервер.

Внешнее хранилище может быть представлено в двух вариантах.

  • Стандартное FTP хранилище
  • Облачное S3 хранилище

Определить тип хранилища, который использует ваш сервер, можно при помощи Инструкции к услуге в Личном кабинете. Там же вы найдете доступы для подключения к хранилищу бэкапов. Для этого откройте раздел ТоварыВиртуальные серверы, выберите ваш сервер в списке одним кликом и сверху нажмите Инструкция. В блоке Автоматическое резервное копирование будут указаны данные доступа.

Восстановление из FTP хранилища

Предположим, мы выяснили доступы для подключения к хранилищу — условные ftp-server.net (адрес хранилища), ftp-user (имя FTP-пользователя) и ftp-password (пароль FTP-пользователя). Для наглядности приведём пример восстановления копии от 2020-04-22.

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

  1. Скачиваем полную копию (за последнее воскресенье — в примере 2020-04-19):
    wget -r 'ftp://ftp-user:ftp-password@ftp-server.net/ftp-user/2020-04-19'
  2. Скачиваем дифференциальную копию (за нужную дату — в примере 2020-04-22):
    wget -r 'ftp://ftp-user:ftp-password@ftp-server.net/ftp-user/2020-04-22'
  3. Далее создадим папку, куда восстановим копию:
    mkdir /root/restore
  4. После этого откроем директорию с загруженным архивом от нужной вам даты:
    cd ftp-server.net/ftp-user/2020-04-22

Теперь запустим распаковку архива.

Восстановление из S3 хранилища

Предположим, мы выяснили доступы для подключения к хранилищу. Для наглядности приведём пример восстановления копии от 2020-04-22.

  1. В первую очередь устанавливаем и настраиваем клиент для работы с S3:
    • Ubuntu\Debian
      apt install -y s3cmd
    • CentOS
      yum install -y s3cmd
  2. Далее необходимо создать конфигурацию:
    s3cmd  --access_key=ключ --secret_key=секрет  --region=RegionOne --host=https://s3backup.hoztnode.net --host-bucket="https://s3backup.hoztnode.net/%(bucket)"  --dump-config >~/.s3cfg
  3. Cкачиваем полную копию (последнее воскресенье до нужной даты):
    s3cmd sync s3://bucket/user/2020-04-19 ./
  4. Скачиваем дифференциальную копию (за нужную дату):
    s3cmd sync s3://bucket/user/2020-04-22 ./
  5. Теперь откроем директорию с загруженным архивом от нужной вам даты:
    cd 2020-04-22

Теперь запустим распаковку архива.

Распаковка архива

Создаём директорию, в которую будет выполнятся распаковка:

mkdir /root/restore
  • Если нужно распаковать весь архив:
    /opt/autobackup/isptar --extract I2020-04-22.user.tgz --base ../2020-04-19/F2020-04-19.user.tgz --root /root/restore
  • Если нужно распаковать только отдельную директорию data/etc, содержащуюся в архиве:
    /opt/autobackup/isptar --extract I2020-04-22.user.tgz --base ../2020-04-19/F2020-04-19.user.tgz --root /root/restore data/etc

Перед восстановлением проверьте, что на вашем диске достаточно памяти для распаковки.

Если у вас возникнут трудности — обратитесь в службу поддержки, технические консультации входят в стоимость аренды сервера.

Назад к категории