# Резервное копирование и восстановление данных

## Описание

В Мониторинге и ПринтМенеджере есть функционал создания бэкапа всей системы и ее данных, позволяющий сохранить рабочее состояние при использовании внутренних инструментов, без участия гипервизора.

### Требования к процессу копирования и восстановления

- Восстанавливать резервную копию нужно на чистый сервер, требования к которому описаны в документе [технических требований к инфраструктуре.](https://drive.google.com/file/d/18uiNpfpEInt6VUgLUBQFvT-KQWGuJR4D/view)
- IP-адрес или доменное имя сервера (FQDN) должны совпадать с тем, которое было на момент создания копии.
- Операционная система не должна меняться.
- Для создания копии объем свободного места на жестком диске должен равняться размеру папки `/opt`
- Для восстановления копии объем свободного места на жестком диске должен быть не менее размера архива с копией.

### Создание резервных копий

Для запуска процесса создания резервной копии введите в терминале сервера команды, указанные ниже.

Если на сервере установлена система Мониторинга или сразу оба продукта, Мониторинг и Принтеменджер, используйте команду:

```
sudo /opt/printum/backup.sh /home/user/backup  
```

Где `/home/user/backup/` — это абсолютный путь до файла с резервной копией. 

Если на сервере установлен только ПринтМенеджер, используйте команду:

```
sudo /opt/printmanager/backup.sh  /home/user/backup
```

Резервная копия будет создана для всех установленных продуктов. При резервном копировании создаются копии следующих элементов конфигурации:
- Система Мониторинга (включая значения переменных и базы данных).
- Система ПринтМененджера (включая значения переменных и базы данных).
- Сетевой агент мониторинга (включая его конфигурацию).
- Установочные пакеты 

**ВАЖНО:** Время создания резервных копий может быть продолжительным (зависит от размера бекапа, скорости работы процессора и диска), система в это время будет выключена. 

После успешного завершения резервного копирования в терминале будет выведена надпись:

```
Backup completed. Archives save in /home/user/backup/printum-backup-date-month-day-hour-minute.tar.gz
```

где 
- `/home/user/backup/` –  расположение файла с резервной копией, 
- `printum-backup-date-month-day-hour-minute.tar.gz` – название файла с резервной копией, время в название файла соответствует времени начала бекапа.

Переместите этот файл во внешнее хранилище любым доступным способом, например через scp.

### Восстановление резервных копий

Убедитесь, что на жестком диске сервера достаточно места для сохранения резервной копии. Переместите сохраненный на прошлом шаге файл на чистый сервер в любую папку. 

Для запуска процесса восстановления разархивируйте архив и запустите в нем команды:

```
sudo tar xzvf printum_backup_date-month-day_hour-minute.tar.gz
sudo printum_backup_date-month-day_hour-minute/restore.sh
```

где  
- `printum_backup_date-month-day_hour-minute.tar.gz` – название архива,
- `printum_backup_date-month-day_hour-minute` – название распакованной директории из архива.

При успешном завершении восстановления будет выведена надпись:

```
Restoration complete
```

Восстановление завершено. Подождите несколько минут для запуска системы. Убедитесь, что восстановление прошло успешно, например: проверьте корректность отображения данных принтеров в ЛК, загрузку страниц панелей администратора Мониторинга и ПринтМенеджера, печать, копирование и сканирование документов.

После подтверждения работоспособности системы удалите архив и распакованную папку для экономии места:

```
sudo rm -f printum_backup_date-month-day_hour-minute.tar.gz
sudo rm -fr printum_backup_date-month-day_hour-minute
```