Восстановление root pool
Процедура восстановления root pool в случае, например, полного отказа системного диска требует несколько большего внимания администратора и должна выполняться вручную. Данная процедура разработана на основе алгоритма восстановления Solaris Internals.
Процедура восстановления root pool в случае, например, полного отказа системного диска требует несколько большего внимания администратора и должна выполняться вручную. Данная процедура разработана на основе алгоритма восстановления Solaris Internals.
При замене поврежденного системного диска выполняется ряд обязательных процедур, связанных с заменой дисков. Вместе с тем, при наличии удаленной резервной копии корневого пула процедура восстановления позволяет сравнительно быстро привести систему в загружаемое состояние.
Прежде всего, для восстановления корневого пула необходима его резервная копия - в виде архива (компрессированного или нет) или сохраненная в виде файловой системы на резервном сервере.
Последующие действия описаны в виде алгоритма ниже.
1. Необходимо загрузить восстанавливаемую систему с внешнего носителя - DVD, CD, USB или сети:Прежде всего, для восстановления корневого пула необходима его резервная копия - в виде архива (компрессированного или нет) или сохраненная в виде файловой системы на резервном сервере.
Последующие действия описаны в виде алгоритма ниже.
ok boot cdrom
или
ok boot net
2. На резервном сервере, содержащем бэкап (архив или файловую систему) необходимо сконфигурировать удаленный доступ для R-утилит с восстанавливаемой машины и запустить
соответствующие сервисы:
backup_server# netservices open
backup_server# vi /.rhosts
backup_server# vi /etc/hosts_equiv
При наличии сконфигурированного IPF необходимо разрешить доступ на сервер восстановления c восстанавливаемой машины.
3. При физическом отказе и замене системного диска новый диск необходимо пометить и разбить на слайсы. Метка диска должна иметь тип SMI.
4. На восстанавливаемой машине пересоздается корневой пул на новом диске, например:
# zpool create -f -o failmode=continue -R /a \ -m legacy rpool c0t0d0s0 # installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk \/dev/rdsk/c0t0d0s0
# installgrub /boot/grub/stage1 /boot/grub/stage2 \/dev/rdsk/c0t0d0s06. Далее выполняется прием рекурсивного снапшота и восстановление содержимого пула с удаленного резервного сервера:
# rsh backup_server zfs send backup_data/rpool|zfs receive -Fdv rpool
либо из компрессированного архива, находящегося на удаленном резервном сервере:
# rsh backup_server gzip -c -d pegasus.rpool.0.zfs.gz| zfs receive -Fdv rpool
Можно также выполнить восстановление root pool непосредственно с локальной архивной копии, находящейся, например, на USB-устройстве (неархивированный стрим, для
компрессированного архива требуется предварительно выполнить декомпрессию ввиду возможной недоступности gzip в miniroot загрузочного дистрибутива):
# cd /usbmount
# cat pegasus.rpool.0.zfs|zfs receive -dFv rpool
Операция восстановления содержимого пула может потребовать некоторого времени.
7. Необходимо убедиться, что корневой пул был успешно восстановлен в полном объеме командой zfs list.
8. Необходимо установить свойство bootfs корневого пула в правильное (оригинальное) значение:
# zpool set bootfs=rpool/ROOT/s10x_u8wos_08a rpool
Пересоздание dump и swap разделов не требуется, если резервная копия корневого пула создавалась при помощи zfsbackup. Рекурсивный снапшот корневого пула содержит данные разделы и они будут восстановлены автоматически.
9. Перезагрузить систему с восстановленного пула:
# init 6
Замечание: Вместо пересоздания пула и его восстановления можно также использовать (начиная с версии 10/09) функциональность zflash и выполнить восстановление средствами JumpStart flash install с некомпрессированного стрима (архива), созданного утилитой zfsbackup.
