
Подходит ли описанная ниже процедура для выполнения обновления VIOS и одновременной подготовки к быстрому откату в случае необходимости?
Предположим, что существующий VIOS зеркалирован на hdisk0 и hdisk1. Поэтому загрузочный список будет содержать записи как для hdisk0, так и для hdisk1.
Шаг 1. Выполните резервное копирование mksysb на случай, если что-то из перечисленного пойдет не так.
$ backupios -file <path to NFS location>/<file name> -mksysb
Шаг 2. Разбейте зеркало (этот шаг удалит содержимое hdisk1)
$ unmirrorios hdisk1
Шаг 3. Удалить hdisk1 из группы томов rootvg
$ reducevg hdisk1
Шаг 4. Измените загрузочный список так, чтобы он содержал только hdisk0, с помощью следующих команд:
$oem_setup_env
# bosboot -ad /dev/hdisk0
# bootlist -m normal hdisk0 blv=hd5
Шаг 5. Клонируйте существующий VIOS с помощью команды alt_root_vg
$ alt_root_vg -target hdisk1 -bundle update_all -location < path-to-VIOS-update-package >
Шаг 6. Перезапустите VIOS, чтобы убедиться, что он запускается только на hdisk0.
$ shutdown –restart
Теперь VIOS загружается только с hdisk1, но существуют две копии (hdisk0 и hdisk1), см. документацию по команде alt_root_vg
Шаг 7. Теперь выполните обновление VIOS только на hdisk0
$ updateios -accept -install -dev /some-device
Шаг 8. Теперь выполните тестирование нового VIOS, установленного на hdisk1.
Шаг 9. Если проблем с VIOS нет, перейдите к шагу 9. Если возникли проблемы и необходимо выполнить откат нового VIOS, просто измените загрузочный список на hdisk0 и перезапустите VIOS.
# bosboot -ad /dev/hdisk0
# bootlist -m normal hdisk0 blv=hd5
Шаг 10. Теперь перезапустите VIOS, и он должен вернуться к исходному VIOS.
Шаг 11. Восстановите зеркало.
$ mirrorios -defer hdisk0
Шаг 12. Восстановите правильный загрузочный список для зеркальных дисков.
# bosboot -ad /dev/hdisk0
# bosboot -ad /dev/hdisk1
# bootlist -m normal hdisk0 hdisk1