Как восстановить системный диска узла кластера vStack из резервной копии?

Данная инструкция предназначена для восстановления системного диска узла (далее — Узел) кластера vStack из резервной копии.

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

Важно!

Каждый Узел должен иметь свою индивидуальную резервную копию. Восстановление Узла из резервной копии, снятой с другого Узла, не допускается, не поддерживается и может привести к потере данных в слое SDS.

Нам потребуется:

  1. Резервная копия, выполненная по Инструкции №30 и сохранённая на внешнем носителе (далее — Носитель), например, USB memory stick.
  2. Установочный носитель vStack.

Желательно использовать модели Носителей, поддерживающие версию USB не менее 3.0, и подключать их в разъём USB 3.0. В случае невозможности использования USB 3.0 скорость загрузки и восстановления из резервной копии существенно увеличится.

Выполняем загрузку с установочного носителя vStack и входим в режим LiveCD.

С помощью команды geom disk list идентифицируем новый системный диск и носители. Например, установочный носитель имеет имя da3, носитель с резервной копией имеет имя da5, а системный диск имеет имя da0.

Выполняем создание метки, EFI-разделов и файловой системы EFI на новом системном диске:

# gpart create -s gpt da0

# gpart add -t efi -l efi0 -s 260M da0

# newfs_msdos -F 32 -c 1 -L EFISYS /dev/da0p1

# mount_msdosfs /dev/da0p1 /mnt

# mkdir -p /mnt/EFI/BOOT/

# mkdir -p /mnt/EFI/freebsd/

# cp /boot/loader.efi /mnt/EFI/freebsd/

# cp /boot/loader.efi /mnt/EFI/BOOT/BOOTX64.efi

# efibootmgr -a -c -l /mnt/efi/boot/BOOTx64.efi -L vStackOS

# umount /mnt

Следующим шагом создаем разделы для swap, корневой файловой системы и монтируем новую корневую файловую систему в путь /mnt/newroot:

# gpart add -t freebsd-swap -a 4 -s 4g da0

# gpart add -t freebsd-ufs -a 4 da0

# newfs -t /dev/da0p3

# mount /dev/da0p3 /mnt

Файловую систему носителя с резервной копией монтируем в путь /var/backup и смотрим имя нашей резервной копии:

# mkdir /var/backup

# mount -o ro /dev/da5p1 /var/backup

# ls -lh /var/backup/*.dump

Далее остается выполнить команду восстановления:

# cd /mnt

# restore xf /var/backup/q29u005.20221129.dump

Рисунок 1. Ход выполнения восстановления

После завершения операции восстановления можно проверить содержимое файловой системы, после чего отмонтировать её и файловую систему с резервной копией:

Рисунок 2. Проверка содержимого файловой системы

Остался последний этап:

  1. Выключить Узел, на котором выполнялось восстановление.
  2. Подключить к нему диски для слоя SDS.
  3. Включить Узел.
  4. Убедиться, что Узел корректно подключился к Кластеру и его Здоровье в состоянии “Норма”.