Режим восстановления позволяет загрузить сервер, если он не запускается после перезагрузки по какой-либо причине и физического доступа к серверу, например, с помощью IPMI нет.

Подготовка сервера к восстановлению


Для восстановления сервера:

  1. Убедитесь, что у сервера указаны IP и MAC адреса в DCImanager.
  2. Обеспечьте доступность сервера для восстановления с сервера, на котором установлен DCImanager.
  3. Убедитесь, что на сервере настроена загрузка по сети.
  4. Убедитесь, что у сервера настроено подключение к распределителю питания, IPMI или обеспечьте возможность ручной перезагрузки сервера после запуска операции восстановления.
  5. Установите нужный шаблон восстановления в Настройки → Шаблоны ОС:
    1. Sysrescd-x86_64 — для восстановления серверов с операционной системой Linux, если сервера загружаются по сети с помощью iPXE.
    2. Sysrescd-x86_64-noipxe — для восстановления серверов с операционной системой Linux, если сервера загружаются по сети с помощью PXE.
    3. FreeBSD-rescue-amd64 — для восстановления серверов с операционной системой FreeBSD.
  6. Убедитесь, что указаны интерфейсы, на которых работает DHCP-сервер, в Настройки → Глобальные настройки → поле Интерфейсы.

Восстановление сервера


Нажмите Главное меню → СерверыОперации.

Укажите:

  • Тип операции — выберите "Загрузить шаблон восстановления";
  • IP-адрес — адрес сервера;
  • Загрузить шаблон восстановления — шаблон, который будет использоваться для восстановления;
  • Пароль — для подключения к серверу;
  • Подтверждение;
  • Уведомить об окончании — опция оповещения об окончании операции, если она завершилась с ошибкой или была отменена пользователем..

DCImanager перезагрузит сервер и вы сможете подключиться к нему по SSH.

Нажмите Главное меню → Серверы → Отменить для отключения режима восстановления. Сервер будет перезагружен в обычном режиме.

Принципы работы


Шаблон FreeBSD-rescue-amd64

Используется для восстановления серверов с операционной системой FreeBSD.

Пример восстановления пароля суперпользователя на сервере:

  1. Подключитесь к серверу, загруженному с помощью шаблона восстановления FreeBSD-rescue-amd64 по SSH;
  2. Загрузите модуль gmirror для работы с зеркалами дисков:

    gmirror load
    BASH
  3. Выполните команду gmirror status. Вывод должен быть следующего вида:

    # gmirror status
            Name    Status  Components   mirror/mir0  COMPLETED  ad4 (ACTIVE)
                            ad6 (ACTIVE)
    BASH
  4. Выполните команду ls -la /dev/mirror/mir0* для просмотра разделов на найденном устройстве mirror/mir0:

    # ls -la /dev/mirror/mir0*
    crw-r-----  1 root  operator    0,  91 Jun 18 13:47 /dev/mirror/mir0
    crw-r-----  1 root  operator    0,  92 Jun 18 13:47 /dev/mirror/mir0s1
    crw-r-----  1 root  operator    0,  93 Jun 18 13:47 /dev/mirror/mir0s1a
    crw-r-----  1 root  operator    0,  94 Jun 18 13:47 /dev/mirror/mir0s1b
    BASH
  5. В этом случае корневой раздел — /dev/mirror/mir0s1a. Если корневого раздела на устройстве нет, проверьте его наличие на дисках /dev/ad*:

    # ls -la /dev/ad*
    crw-r-----  1 root  operator    0,  63 Jun 18 13:53 /dev/ad4
    crw-r-----  1 root  operator    0,  64 Jun 18 13:53 /dev/ad4s1
    crw-r-----  1 root  operator    0,  66 Jun 18 13:53 /dev/ad4s1a
    crw-r-----  1 root  operator    0,  67 Jun 18 13:53 /dev/ad4s1b
    crw-r-----  1 root  operator    0,  65 Jun 18 13:53 /dev/ad6
    BASH

    В этом случае корневой раздел — /dev/ad4s1a.

  6. Создайте директорию:

    mkdir /true_root
    BASH
  7. Примонтируйте к ней раздел:

    mount /dev/ad4s1a /true_root
    BASH
  8. Измените корневой каталог:

    chroot /true_root
    BASH
  9. Для смены пароля суперпользователя выполните команду:

    passwd root
    BASH
  10. Дважды введите новый пароль и выйдите из chroot с помощью команды:

    exit
    BASH
  11. Отмонтируйте директорию:

    umount /true_root
    BASH

Шаблоны Sysrescd-x86_64 и Sysrescd-x86_64-noipxe

Используются для восстановления серверов с операционной системой Linux. Шаблоны основаны на операционной системе Gentoo. В Gentoo используется собственная система портежей. Подробнее см. на официальном сайте Gentoo. Для управления программного обеспечения используется команда emerge. Подробнее см. на opennet.ru. Например, установка выполняется командой:

emerge <имя_портежа>
BASH

Пример восстановления пароля суперпользователя на сервере:

  1. Подключитесь к серверу, загруженному с помощью шаблона восстановления по SSH;
  2. Определите способ подключения дисков. Например, с помощью команды:
    lsblk
    BASH
  3. Определите раздел диска, на котором находится корневой раздел;
  4. Создайте директорию:

    mkdir /true_root
    BASH
  5. Примонтируйте к ней корневой раздел:

    mount /dev/<устройство, содержащее корневой раздел> /true_root
    BASH
  6. Измените корневой каталог:

    chroot /true_root
    BASH
  7. Для смены пароля суперпользователя выполните команду:

    passwd root
    BASH
  8. Дважды введите новый пароль и выйдите из chroot с помощью команды:

    exit
    BASH
  9. Отмонтируйте директорию:

    umount /true_root
    BASH