Помощь
Восстановление данных из бэкапов услуги «Резервное копирование» на серверах без панели управления
Услуга «Резервное копирование» позволяет работать с бэкапами как на серверах с панелью управления 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 и в терминале выполним команды:
- Скачиваем полную копию (за последнее воскресенье — в примере 2020-04-19):
wget -r 'ftp://ftp-user:ftp-password@ftp-server.net/ftp-user/2020-04-19'
- Скачиваем дифференциальную копию (за нужную дату — в примере 2020-04-22):
wget -r 'ftp://ftp-user:ftp-password@ftp-server.net/ftp-user/2020-04-22'
- Далее создадим папку, куда восстановим копию:
mkdir /root/restore
- После этого откроем директорию с загруженным архивом от нужной вам даты:
cd ftp-server.net/ftp-user/2020-04-22
Теперь запустим распаковку архива.
Восстановление из S3 хранилища
Предположим, мы выяснили доступы для подключения к хранилищу. Для наглядности приведём пример восстановления копии от 2020-04-22
.
- В первую очередь устанавливаем и настраиваем клиент для работы с S3:
- Ubuntu\Debian
apt install -y s3cmd
- CentOS
yum install -y s3cmd
- Ubuntu\Debian
- Далее необходимо создать конфигурацию:
s3cmd --access_key=ключ --secret_key=секрет --region=RegionOne --host=https://s3backup.hoztnode.net --host-bucket="https://s3backup.hoztnode.net/%(bucket)" --dump-config >~/.s3cfg
- Cкачиваем полную копию (последнее воскресенье до нужной даты):
s3cmd sync s3://bucket/user/2020-04-19 ./
- Скачиваем дифференциальную копию (за нужную дату):
s3cmd sync s3://bucket/user/2020-04-22 ./
- Теперь откроем директорию с загруженным архивом от нужной вам даты:
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
Перед восстановлением проверьте, что на вашем диске достаточно памяти для распаковки.
Если у вас возникнут трудности — обратитесь в службу поддержки, технические консультации входят в стоимость аренды сервера.