Функциональные возможности Solaris Live Upgrade предыдущих версий по-прежнему доступны, и, если относятся к компонентам UFS, работают как в предыдущих версиях Solaris.
Доступны следующие функции:
При переходе корневой файловой системы UFS в корневую файловую систему ZFS нужно указать существующий пул устройств хранения ZFS с помощью параметра -p.
Если компоненты корневой файловой системы UFS располагаются на разных подразделах, выполняется их переход в корневой пул ZFS.
Перенос системы с зонами возможен, однако поддержка различных возможных конфигураций в Solaris 10 10/08 ограничена. Начиная с версии Solaris 10 5/09 реализована поддержка дополнительных конфигураций зон. С дополнительными сведениями можно ознакомиться в следующих разделах:
Если выполняется перенос системы без зон, см. раздел Использование Solaris Live Upgrade для перехода в корневую файловую систему ZFS (без зон).
При создании среды загрузки ZFS в том же пуле Solaris Live Upgrade может использовать моментальный снимок ZFS и функциональные возможности клонирования. Поэтому создание BE происходит гораздо быстрее, чем в предыдущих версиях Solaris.
Дополнительную информацию о функциональных возможностях установки Solaris и Solaris Live Upgrade см. в разделе Solaris 10 Installation Guide: Solaris Live Upgrade and Upgrade Planning
Базовый процесс для миграции корневой файловой системы UFS в корневую файловую систему ZFS выглядит следующим образом:
Установите Solaris версии 10 10/08, 10 5/09 или 10 10/09, либо воспользуйтесь стандартной программой обновления из предыдущих выпусков Solaris 10 на любом поддерживаемом компьютере с архитектурой SPARC или x 86.
Если необходимо, после установки или обновления до выпуска Solaris 10 10/08, 10 5/09 или 10 10/09 следует создать пул устройств хранения ZFS для корневой файловой системы ZFS.
Используйте Solaris Live Upgrade для перехода от корневой файловой системы UFS на корневую файловую систему ZFS.
Активируйте среду загрузки ZFS с помощью команды luactivate.
Дополнительная информация о требованиях к ZFS и Solaris Live Upgrade приведена в разделе Требования к установке Solaris и Solaris Live Upgrade для поддержки ZFS .
Перед использованием Solaris Live Upgrade для перехода корневой файловой системы UFS в корневую файловую систему ZFS ознакомьтесь со следующим списком проблем:
Возможность стандартного обновления установки Solaris с помощью графического интерфейса недоступна при переходе с UFS в корневую файловую систему ZFS. Для перехода с файловой системы UFS используйте Solaris Live Upgrade.
Нужно создать пул устройств хранения ZFS, который будет использован для загрузки до выполнения операции Solaris Live Upgrade. Кроме того, из-за ограничений загрузки в данной версии корневой пул ZFS должен быть создан с подразделами, а не с целыми дисками. Пример:
# zpool create rpool mirror c1t0d0s0 c1t1d0s0 |
До создания нового пула убедитесь, что диски, которые будут использованы в пуле, имеют метку SMI (VTOC), а не метку EFI. Если диск помечается заново меткой SMI, убедитесь, что процесс установки метки не изменил схему разделов диска. В большинстве случаев большая часть объема диска должна быть отведена под подразделы, предназначенные для корневого пула.
Нельзя использовать Solaris Live Upgrade для создания среды загрузки UFS из среды загрузки ZFS. При переходе среды загрузки UFS в среду загрузки ZFS, если сохраняется среда загрузки UFS, можно загружаться как из среды загрузки UFS, так и из среды загрузки ZFS.
Не переименовывайте среду загрузки ZFS с помощью команды zfs rename, поскольку Solaris Live Upgrade не будет знать об изменении имени. Последующие команды, такие как ludelete, завершатся ошибкой. И вообще не переименовывайте пулы ZFS и файловые системы, если существуют среды загрузки, которые вы планируете использовать по-прежнему.
Solaris Live Upgrade создает наборы данных для BE и томов ZFS для области подкачки и устройства дампа, но не учитывает всех изменений свойств существующих наборов данных. Таким образом, если свойство набора данных включено в новой BE, вы должны указать это свойство до выполнения операции lucreate. Пример:
# zfs set compression=on rpool/ROOT |
При создании альтернативной BE, которая представляет собой клон основной BE, вы не можете использовать параметры -f, -x, -y, - Y и -z для включения или исключения файлов из основной BE. Параметры включения и исключения файлов можно все же использовать в следующих случаях:
UFS -> UFS UFS -> ZFS ZFS -> ZFS (different pool) |
Хотя можно использовать Solaris Live Upgrade для обновления из корневой файловой системы UFS в корневую файловую систему ZFS, вы не можете использовать Solaris Live Upgrade для обновления некорневых файловых систем и файловых систем с общим доступом.
Нельзя использовать команду lu для создания или перехода корневой файловой системы ZFS.
В следующих примерах показан перенос с корневой файловой системы UFS в корневую файловую систему ZFS.
Сведения по переносу или обновлению системы с зонами приведены в следующих разделах:
Следующий пример демонстрирует создание BE корневой файловой системы ZFS из корневой файловой системы UFS. Текущая BE ufs509BE, содержащая корневую файловую систему UFS, указывается параметром -c. Если не указан дополнительный параметр -c, в качестве имени текущей среды загрузки по умолчанию используется имя устройства. Новая BE (zfs1009BE) указывается параметром -n. Пул устройств хранения ZFS должен существовать на момент выполнения операции lucreate.
Пул устройств хранения ZFS должен быть создан на подразделах, а не целых дисках, чтобы его можно было загружать и обновлять. До создания нового пула убедитесь, что диски, которые будут использованы в пуле, имеют метку SMI (VTOC), а не метку EFI. Если диск помечается заново меткой SMI, убедитесь, что процесс установки метки не изменил схему разделов диска. В большинстве случаев большая часть объема диска должна быть отведена под подразделы, предназначенные для корневого пула.
# zpool create mpool mirror c1t2d0s0 c2t1d0s0 # lucreate -c ufs1009BE -n zfs1009BE -p mpool Analyzing system configuration. No name for current boot environment. Current boot environment is named <ufs1009BE>. Creating initial configuration for primary boot environment <ufs1009BE>. The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID. PBE configuration successful: PBE name <ufs1009BE> PBE Boot Device </dev/dsk/c1t0d0s0>. Comparing source boot environment <ufs1009BE> file systems with the file system(s) you specified for the new boot environment. Determining which file systems should be in the new boot environment. Updating boot environment description database on all BEs. Updating system configuration files. The device </dev/dsk/c1t2d0s0> is not a root device for any boot environment; cannot get BE ID. Creating configuration for boot environment <zfs1009BE>. Source boot environment is <ufs1009BE>. Creating boot environment <zfs1009BE>. Creating file systems on boot environment <zfs1009BE>. Creating <zfs> file system for </> in zone <global> on <mpool/ROOT/zfs1009BE>. Populating file systems on boot environment <zfs1009BE>. Checking selection integrity. Integrity check OK. Populating contents of mount point </>. Copying. Creating shared file system mount points. Creating compare databases for boot environment <zfs1009BE>. Creating compare database for file system </mpool/ROOT>. Creating compare database for file system </>. Updating compare databases on boot environment <zfs1009BE>. Making boot environment <zfs1009BE> bootable. Creating boot_archive for /.alt.tmp.b-qD.mnt updating /.alt.tmp.b-qD.mnt/platform/sun4u/boot_archive Population of boot environment <zfs1009BE> successful. Creation of boot environment <zfs1009BE> successful. |
После завершения операции lucreate используйте команду lustatus для просмотра статуса BE. Пример:
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- ufs1009BE yes yes yes no - zfs1009BE yes no no yes - |
Затем ознакомьтесь со списком компонентов ZFS. Пример:
# zfs list NAME USED AVAIL REFER MOUNTPOINT mpool 7.17G 59.8G 95.5K /mpool mpool/ROOT 4.66G 59.8G 21K /mpool/ROOT mpool/ROOT/zfs1009BE 4.66G 59.8G 4.66G / mpool/dump 2G 61.8G 16K - mpool/swap 517M 60.3G 16K - |
Затем используйте команду luactivate для активации новой среды загрузки ZFS. Например:
# luactivate zfs1009BE A Live Upgrade Sync operation will be performed on startup of boot environment <zfs1009BE>. ********************************************************************** The target boot environment has been activated. It will be used when you reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You MUST USE either the init or the shutdown command when you reboot. If you do not use either init or shutdown, the system will not boot using the target BE. ********************************************************************** . . . Modifying boot archive service Activation of boot environment <zfs1009BE> successful. |
Затем перезагрузите систему в среде загрузки ZFS.
# init 6 |
Убедитесь, что среда загрузки ZFS активна.
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- ufs1009BE yes no no yes - zfs1009BE yes yes yes no - |
При переключении обратно в среду загрузки UFS необходимо заново импортировать все пулы устройств хранения данных, которые были созданы в среде загрузки ZFS, поскольку они не становятся автоматически доступными в среде загрузки UFS.
Если среда загрузки UFS больше не нужна, можно удалить ее с помощью команды ludelete.
Создание среды загрузки ZFS из среды загрузки ZFS в том же пуле происходит очень быстро, поскольку эта операция использует функциональные возможности ZFS snapshot (моментальный снимок) и clone (клонирование). Если текущая BE располагается в том же пуле ZFS, например mpool, параметр -p опускается.
Если на компьютере с архитектурой SPARC есть несколько сред загрузки ZFS, можно использовать команду boot -L для обнаружения доступных сред загрузки. BE, из которой будет производиться загрузка, выбирается с помощью команды boot -Z. На компьютерах с архитектурой x86 можно выбрать BE в меню GRUB. Дополнительно см. Пример 5–9.
# lucreate -n zfs10092BE Analyzing system configuration. Comparing source boot environment <zfs1009BE> file systems with the file system(s) you specified for the new boot environment. Determining which file systems should be in the new boot environment. Updating boot environment description database on all BEs. Updating system configuration files. Creating configuration for boot environment <zfs10092BE>. Source boot environment is <zfs1009BE>. Creating boot environment <zfs10092BE>. Cloning file systems from boot environment <zfs1009BE> to create boot environment <zfs10092BE>. Creating snapshot for <mpool/ROOT/zfs1009BE> on <mpool/ROOT/zfs1009BE@zfs10092BE>. Creating clone for <mpool/ROOT/zfs1009BE@zfs10092BE> on <mpool/ROOT/zfs10092BE>. Setting canmount=noauto for </> in zone <global> on <mpool/ROOT/zfs10092BE>. Population of boot environment <zfs10092BE> successful. Creation of boot environment <zfs10092BE> successful. |
Можно обновить среду загрузки ZFS с помощью дополнительных пакетов или исправлений.
Основной процесс выглядит следующим образом:
Создайте другую среду загрузки с помощью команды lucreate.
Активируйте другую среду загрузки и загрузитесь из нее.
Обновите основную среду загрузки ZFS командой luupgrade для добавления пакетов или исправлений.
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfs1009BE yes no no yes - zfs10092BE yes yes yes no - # luupgrade -p -n zfs1009BE -s /net/system/export/s10u8/Solaris_10/Product SUNWchxge Validating the contents of the media </net/system/export/s10u8/Solaris_10/Product>. Mounting the BE <zfs1009BE>. Adding packages to the BE <zfs1009BE>. Processing package instance <SUNWchxge> from </net/install/export/s10u8/Solaris_10/Product> Chelsio N110 10GE NIC Driver(sparc) 11.10.0,REV=2006.02.15.20.41 Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. This appears to be an attempt to install the same architecture and version of a package which is already installed. This installation will attempt to overwrite this package. Using </a> as the package base directory. ## Processing package information. ## Processing system information. 4 package pathnames are already properly installed. ## Verifying package dependencies. ## Verifying disk space requirements. ## Checking for conflicts with packages already installed. ## Checking for setuid/setgid programs. This package contains scripts which will be executed with super-user permission during the process of installing this package. Do you want to continue with the installation of <SUNWchxge> [y,n,?] y Installing Chelsio N110 10GE NIC Driver as <SUNWchxge> ## Installing part 1 of 1. ## Executing postinstall script. Installation of <SUNWchxge> was successful. Unmounting the BE <zfs1009BE>. The package add to the BE <zfs1009BE> completed. |
С помощью функции Solaris Live Upgrade можно выполнить перенос системы вместе с зонами, однако поддержка возможных конфигураций в версии Solaris 10 10/08 ограничена). При установке Solaris 10 5/09 или при обновлении до этой версии поддерживается более широкий диапазон конфигураций зон. Дополнительные сведения приведены в разделе Перенос или обновление системы с зонами с помощью Solaris Live Upgrade (Solaris 10 5/09 и Solaris 10 10/09).
В этом разделе описывается, как настроить и установить систему с зонами, чтобы можно было выполнить обновление или исправление этой системы с помощью функции Solaris Live Upgrade. Если выполняется переход в корневую файловую систему ZFS без зон, см. раздел Использование Solaris Live Upgrade для перехода в корневую файловую систему ZFS (без зон).
Если выполняется перенос системы с зонами или настройка системы с зонами в версии Solaris 10 10/08, воспользуйтесь следующими процедурами:
Настройка корневой файловой системы ZFS с корнями зон в системе ZFS (Solaris 10 10/08)
Устранение проблем с точками монтирования ZFS, которые препятствуют успешной загрузке
С помощью рекомендованных процедур установите зоны в системе с корневой файловой системой ZFS таким образом, чтобы можно было использовать функцию Live Upgrade в этой системе.
Выполните описанные ниже действия для перехода корневой файловой системы UFS с установленными зонами в корневую файловую систему ZFS и настройки корня зоны в системе ZFS таким образом, чтобы эту систему можно было обновлять или исправлять.
В приведенных ниже действиях используется для примера имя пула rpool и имя активной среды загрузки S10BE*.
Обновите систему до версии Solaris 10 от 10.2008, если используется более ранняя версия Solaris 10.
Дополнительные сведения об обновлении системы с функционирующей версией Solaris 10 приведены в документе Solaris 10 Installation Guide: Solaris Live Upgrade and Upgrade Planning.
Создайте корневой пул.
Дополнительная информация о требованиях к корневому пулу приведена в разделе Требования к установке Solaris и Solaris Live Upgrade для поддержки ZFS .
Подтвердите, что зоны из среды UFS загружены.
Создайте новую среду загрузки.
# lucreate -n S10BE2 -p rpool |
С помощью этой команды устанавливаются наборы данных в корневом пуле для новой среды загрузки и текущая среда загрузки (включая зоны) копируется в эти наборы данных.
Активируйте новую среду загрузки.
# luactivate s10BE2 |
Теперь в системе функционирует корневая файловая система ZFS, но корни зон UFS все еще находятся в корневой файловой системе UFS. В последующих действиях необходимо полностью осуществить переход зон UFS в поддерживаемую настройку ZFS.
Перезагрузите систему.
# init 6 |
Выполните переход зон в среду загрузки ZFS.
Устраните потенциальные проблемы с точками монтирования в этой версии Solaris.
В результате ошибки функции Live Upgrade неактивная среда загрузки может не загрузиться из-за неверной точки монтирования для набора данных ZFS системы или набора данных ZFS зоны в среде загрузки.
Просмотрите выходные данные команды zfs list.
Найдите неверные временные точки монтирования. Пример:
# zfs list -r -o name,mountpoint rpool/ROOT/s10u6 NAME MOUNTPOINT rpool/ROOT/s10u6 /.alt.tmp.b-VP.mnt/ rpool/ROOT/s10u6/zones /.alt.tmp.b-VP.mnt//zones rpool/ROOT/s10u6/zones/zonerootA /.alt.tmp.b-VP.mnt/zones/zonerootA |
Точкой монтирования для среды загрузки корневой системы ZFS (rpool/ROOT/s10u6) должна быть /.
Переопределите точки монтирования для среды загрузки системы ZFS и ее наборов данных.
Пример:
# zfs inherit -r mountpoint rpool/ROOT/s10u6 # zfs set mountpoint=/ rpool/ROOT/s10u6 |
Перезагрузите систему.
Если в меню GRUB или командах ППЗУ OpenBoot имеется возможность выбора конкретной среды загрузки, выберите среду загрузки с исправленными точками монтирования.
Выполните приведенные ниже действия для установки корневой файловой системы ZFS и настройки корней зон ZFS, которые затем можно будет обновлять или исправлять. В данной настройке корни зон ZFS созданы как наборы данных ZFS.
В приведенных ниже действиях в качестве примера используется имя пула rpool и имя активной среды загрузки S10be.
Установите систему с корнем ZFS методом интерактивной начальной установки или методом установки Solaris JumpStart.
Дополнительная информация об установке корневой файловой системы ZFS с помощью метода интерактивной начальной установки или метода Solaris JumpStart приведена в разделе Установка корневой файловой системы ZFS (начальная установка) или Установка корневой файловой системы ZFS (установка методом JumpStart).
Загрузите систему из вновь созданного корневого пула.
Создайте набор данных для группирования корней зон.
Пример:
# zfs create -o canmount=noauto rpool/ROOT/S10be/zones |
В качестве имени набора данных зоны можно использовать любое допустимое имя набора данных. В последующих действиях для примера используется имя набора данных zones.
При указании значения noauto для свойства canmount монтирование набора данных можно выполнить только посредством явного действия функции Solaris Live Upgrade и системного кода запуска.
Смонтируйте вновь созданный контейнерный набор данных для зон.
# zfs mount rpool/ROOT/S10be/zones |
Набор данных монтируется в папке /zones.
Создайте и смонтируйте набор данных для корня каждой зоны.
# zfs create -o canmount=noauto rpool/ROOT/S10be/zones/zonerootA # zfs mount rpool/ROOT/S10be/zones/zonerootA |
Задайте соответствующие разрешения в корневом каталоге зоны.
# chmod 700 /zones/zonerootA |
Выполните настройку зоны, для чего установите путь к ней следующим образом.
# zonecfg -z zoneA zoneA: No such zone configured Use 'create' to begin configuring a new zone. zonecfg:zoneA> create zonecfg:zoneA> set zonepath=/zones/zonerootA |
Чтобы разрешить автоматическую загрузку зон при загрузке системы, используйте следующий синтаксис:
zonecfg:zoneA> set autoboot=true |
Установите зону.
# zoneadm -z zoneA install |
Выполните начальную загрузку зоны.
# zoneadm -z zoneA boot |
Если требуется обновить или исправить корневую файловую систему с корнями зон в ZFS, выполните описанные ниже действия. Можно либо произвести обновление версии системы, либо применить исправления.
В описанных ниже действиях для примера в качестве имени обновляемой или исправляемой среды загрузки используется имя newBE.
Создайте среду загрузки для обновления или исправления.
# lucreate -n newBE |
Имеющаяся среда загрузки клонируется вместе со всеми зонами. Для каждого набора данных первоначальной среды загрузки создается новый набор данных. Новые наборы данных создаются в текущем корневом пуле.
Выберите одно из следующих действий, чтобы обновить систему или применить исправления к новой среде загрузки.
Обновите систему.
# luupgrade -u -n newBE -s /net/install/export/s10u7/latest |
Параметр -s указывает на расположение носителя установки системы Solaris.
Примените исправления к новой среде загрузки.
# luupgrade -t -n newBE -t -s /patchdir 139147-02 157347-14 |
После завершения обновления новой среды загрузки активируйте эту новую среду.
# luactivate newBE |
Выполните загрузку из вновь активированной среды загрузки.
# init 6 |
Устраните потенциальные проблемы с точками монтирования в версии Solaris 10/08.
В результате ошибки функции Live Upgrade неактивная среда загрузки может не загрузиться из-за неверной точки монтирования для набора данных ZFS системы или набора данных ZFS зоны в среде загрузки.
Просмотрите выходные данные команды zfs list.
Найдите неверные временные точки монтирования. Пример:
# zfs list -r -o name,mountpoint rpool/ROOT/newBE NAME MOUNTPOINT rpool/ROOT/newBE /.alt.tmp.b-VP.mnt/ rpool/ROOT/newBE/zones /.alt.tmp.b-VP.mnt//zones rpool/ROOT/newBE/zones/zonerootA /.alt.tmp.b-VP.mnt/zones/zonerootA |
Точкой монтирования для среды загрузки корневой системы ZFS (rpool/ROOT/newBE) должна быть /.
Переопределите точки монтирования для среды загрузки системы ZFS и ее наборов данных.
Пример:
# zfs inherit -r mountpoint rpool/ROOT/newBE # zfs set mountpoint=/ rpool/ROOT/newBE |
Перезагрузите систему.
Если в меню GRUB или командах ППЗУ OpenBoot имеется возможность выбора конкретной среды загрузки, выберите среду загрузки с исправленными точками монтирования.
Использование функции Live Upgrade для переноса или обновления системы с зонами доступно начиная с версии Solaris 10 10/08. В Live Upgrade начиная с версии Solaris 10 5/09 доступны дополнительные варианты настройки разреженных и целостных зон.
В этом разделе описывается процедура настройки и установки системы с зонами начиная с версии Solaris 10 5/09 с возможностью обновления или исправления этой системы посредством функции Solaris Live Upgrade. Если выполняется перенос в корневую файловую систему ZFS без зон, см. раздел Использование Solaris Live Upgrade для перехода в корневую файловую систему ZFS (без зон).
При работе с ZFS и зонами начиная с версии Solaris 10 5/09 с использованием Live Upgrade необходимо обратить внимание на следующие аспекты:
Если функция Live Upgrade должна использоваться с конфигурациями зон, поддержка которых реализована начиная с версии Solaris 10 5/09, сначала необходимо обновить систему до версии Solaris 10 10/09 или Solaris 10 10/09 с помощью стандартной программы обновления.
После этого с помощью Live Upgrade можно либо перенести корневую файловую систему UFS с корнями зон на корневую файловую систему ZFS, либо обновить или исправить корневую файловую систему ZFS и корни зон.
Неподдерживаемые конфигурации зон из более ранних версий Solaris 09 невозможно непосредственно перенести в версию Solaris 10 5/09 или Solaris 10 10/09.
Если выполняется перенос системы с зонами или настройка системы с зонами начиная с версии Solaris 10 5/09, ознакомьтесь со следующей информацией:
Перед переносом или обновлением системы с зонами с помощью Live Upgrade следует ознакомиться с поддерживаемыми конфигурациями зон.
Перенос корневой файловой системы UFS на корневую файловую систему ZFS – поддерживаются следующие конфигурации корней зон:
в каталоге в корневой файловой системе UFS;
в подкаталоге точки монтирования на корневой файловой системе UFS.
Корневая файловая система UFS с корнем зоны (в соответствии с описанием выше) и пул ZFS, не являющийся корневым, с корнем зоны.
Не поддерживается следующая конфигурация UFS/зон:
Корневая файловая система UFS с корнем зоны в качестве точки монтирования.
Перенос или обновление корневой файловой системы ZFS – поддерживаются следующие конфигурации корней зон:
В наборе данных в корневом пуле ZFS. В некоторых случаях, если перед операцией Live Upgrade не предоставлен набор данных для корневой зоны, в результате работы Live Upgrade набор данных для корневой зоны (zoneds) создается.
В подкаталоге корневой файловой системы ZFS.
В наборе данных вне корневой файловой системы ZFS.
В подкаталоге набора данных вне корневой файловой системы ZFS.
В наборе данных в некорневом пуле. Например, zonepool/zones является набором данных, который содержит корни зон, а rpool содержит среду загрузки ZFS.
zonepool zonepool/zones zonepool/zones/myzone rpool rpool/ROOT rpool/ROOT/myBE |
При выполнении операции Live Upgrade создаются снимки зон и выполняется их клонирование в zonepool и среду загрузки rpool, если используется следующий синтаксис:
# lucreate -n newBE |
Создается среда загрузки newBe в rpool/ROOT/newBE, которая при активации предоставляет доступ к компонентам zonepool.
Если бы в приведенном выше примере/zonepool/zones был подкаталогом, а не отдельным набором данных, то Live Upgrade перенес бы его как компоненты корневого пула, rpool.
Информация о переносе и обновлении зон для UFS и ZFS – необходимо ознакомиться со следующими соображениями, которые могут повлиять как на перенос, так и на обновление среды UFS или ZFS.
Если настройка зон выполнялась в соответствии с разделом Перенос или обновление системы с зонами с помощью Solaris Live Upgrade (Solaris 10 10/08) в версии Solaris 10 10/08, после чего было выполнено обновление до версии Solaris 10 5/09 или Solaris 10 10/09, станет возможным перенос на корневую файловую систему ZFS либо обновление до версии Solaris 10 5/09 или Solaris 10 10/09 с помощью Live Upgrade.
Не следует создавать корни зон во вложенных каталогах, например, zones/zone1 или zones/zone1/zone2. В противном случае возможен отказ монтирования во время загрузки.
Эта процедура позволяет создать корневую файловую систему ZFS после первоначальной установки версии Solaris 10 5/09 или Solaris 10 10/09 или после обновления корневой файловой системы ZFS до версии Solaris 10 5/09 или Solaris 10 10/09 командой luupgrade. Среду загрузки ZFS, созданную в соответствии с данной процедурой, можно затем обновить или применить к ней исправления.
В приведенных ниже действиях в системе Solaris 10 10/09, используемой в качестве примера, имеется корневая файловая система ZFS и набор данных корня зоны в /rpool/zones. Создается среда загрузки ZFS с именем zfs10092BE; после этого ее можно обновить или применить к ней исправления.
Исследуйте имеющиеся файловые системы ZFS. Пример:
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 7.26G 59.7G 98K /rpool rpool/ROOT 4.64G 59.7G 21K legacy rpool/ROOT/zfs1009BE 4.64G 59.7G 4.64G / rpool/dump 1.00G 59.7G 1.00G - rpool/export 44K 59.7G 23K /export rpool/export/home 21K 59.7G 21K /export/home rpool/swap 1G 60.7G 16K - rpool/zones 633M 59.7G 633M /rpool/zones |
Убедитесь в том, что зоны установлены и загружены. Пример:
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 zfszone running /rpool/zones native shared |
Создайте среду загрузки ZFS. Пример:
# lucreate -n zfs10092BE Analyzing system configuration. Comparing source boot environment <zfs1009BE> file systems with the file system(s) you specified for the new boot environment. Determining which file systems should be in the new boot environment. Updating boot environment description database on all BEs. Updating system configuration files. Creating configuration for boot environment <zfs10092BE>. Source boot environment is <zfs1009BE>. Creating boot environment <zfs10092BE>. Cloning file systems from boot environment <zfs1009BE> to create boot environment <zfs10092BE>. Creating snapshot for <rpool/ROOT/zfs1009BE> on <rpool/ROOT/zfs1009BE@zfs10092BE>. Creating clone for <rpool/ROOT/zfs1009BE@zfs10092BE> on <rpool/ROOT/zfs10092BE>. Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs10092BE>. Creating snapshot for <rpool/zones> on <rpool/zones@zfs10092BE>. Creating clone for <rpool/zones@zfs10092BE> on <rpool/zones-zfs10092BE>. Population of boot environment <zfs10092BE> successful. Creation of boot environment <zfs10092BE> successful. |
Активируйте среду загрузки ZFS.
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfs1009BE yes yes yes no - zfs10092BE yes no no yes - # luactivate zfs10092BE A Live Upgrade Sync operation will be performed on startup of boot environment <zfs10092BE>. . . . # init 6 |
Убедитесь в том, что в новой среде загрузки созданы файловые системы ZFS и зоны. Пример:
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 7.38G 59.6G 98K /rpool rpool/ROOT 4.72G 59.6G 21K legacy rpool/ROOT/zfs10092BE 4.72G 59.6G 4.64G / rpool/ROOT/zfs10092BE@zfs10092BE 74.0M - 4.64G - rpool/ROOT/zfs1009BE 5.45M 59.6G 4.64G /.alt.zfs1009BE rpool/dump 1.00G 59.6G 1.00G - rpool/export 44K 59.6G 23K /export rpool/export/home 21K 59.6G 21K /export/home rpool/swap 1G 60.6G 16K - rpool/zones 17.2M 59.6G 633M /rpool/zones rpool/zones-zfs1009BE 653M 59.6G 633M /rpool/zones-zfs1009BE rpool/zones-zfs1009BE@zfs10092BE 19.9M - 633M - # zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared - zfszone installed /rpool/zones native shared |
Если требуется обновить или исправить корневую файловую систему с корнями зон в версии Solaris 10 5/09 или Solaris 10 10/09 , выполните описанные ниже действия. Можно либо произвести обновление версии системы, либо применить исправления.
В описанных ниже действиях для примера в качестве имени обновляемой или исправляемой среды загрузки используется имя zfs10093BE.
Исследуйте имеющиеся файловые системы ZFS. Пример:
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 7.38G 59.6G 100K /rpool rpool/ROOT 4.72G 59.6G 21K legacy rpool/ROOT/zfs10092BE 4.72G 59.6G 4.64G / rpool/ROOT/zfs10092BE@zfs10092BE 75.0M - 4.64G - rpool/ROOT/zfs1009BE 5.46M 59.6G 4.64G / rpool/dump 1.00G 59.6G 1.00G - rpool/export 44K 59.6G 23K /export rpool/export/home 21K 59.6G 21K /export/home rpool/swap 1G 60.6G 16K - rpool/zones 22.9M 59.6G 637M /rpool/zones rpool/zones-zfs1009BE 653M 59.6G 633M /rpool/zones-zfs1009BE rpool/zones-zfs1009BE@zfs10092BE 20.0M - 633M - |
Убедитесь в том, что зоны установлены и загружены. Пример:
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 5 zfszone running /rpool/zones native shared |
Создайте среду загрузки ZFS для обновления или исправления. Пример:
# lucreate -n zfs10093BE Analyzing system configuration. Comparing source boot environment <zfs10092BE> file systems with the file system(s) you specified for the new boot environment. Determining which file systems should be in the new boot environment. Updating boot environment description database on all BEs. Updating system configuration files. Creating configuration for boot environment <zfs10093BE>. Source boot environment is <zfs10092BE>. Creating boot environment <zfs10093BE>. Cloning file systems from boot environment <zfs10092BE> to create boot environment <zfs10093BE>. Creating snapshot for <rpool/ROOT/zfs10092BE> on <rpool/ROOT/zfs10092BE@zfs10093BE>. Creating clone for <rpool/ROOT/zfs10092BE@zfs10093BE> on <rpool/ROOT/zfs10093BE>. Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs10093BE>. Creating snapshot for <rpool/zones> on <rpool/zones@zfs10093BE>. Creating clone for <rpool/zones@zfs10093BE> on <rpool/zones-zfs10093BE>. Population of boot environment <zfs10093BE> successful. Creation of boot environment <zfs10093BE> successful. |
Выберите одно из следующих действий, чтобы обновить систему или применить исправления к новой среде загрузки.
Обновите систему. Пример:
# luupgrade -u -n zfs10093BE -s /net/install/export/s10uX/combined.s10s_uXwos/latest |
Параметр -s указывает на расположение носителя установки системы Solaris.
Данный процесс может занять значительное время.
С полным примером процесса luupgrade можно ознакомиться в разделе Пример 5–6.
Примените исправления к новой среде загрузки. Пример:
# luupgrade -t -n zfs10093BE -t -s /patchdir patch-id-02 patch-id-04 |
После завершения обновления новой среды загрузки активируйте эту новую среду.
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfs1009BE yes no no yes - zfs10092BE yes yes yes no - zfs10093BE yes no no yes - # luactivate zfs10093BE A Live Upgrade Sync operation will be performed on startup of boot environment <zfs10093BE>. . . . |
Выполните загрузку из вновь активированной среды загрузки.
# init 6 |
В данном примере среда загрузки ZFS (zfs509BE), созданная в системе Solaris 5/09 с корневой файловой системой и корнем зоны в некорневом пуле, обновляется до выпуска Solaris 10 10/09. Данный процесс может занять значительное время. После этого выполняется активация обновленной среды загрузки (zfs10092BE). Перед началом переноса следует убедиться в том, что зоны установлены и загружены.
В этом примере пул zonepool, набор данных /zonepool/zones и zfszone создаются следующим образом:
# zpool create zonepool mirror c2t1d0 c2t5d0 # zfs create zonepool/zones # chmod 700 zonepool/zones # zonecfg -z zfszone zfszone: No such zone configured Use 'create' to begin configuring a new zone. zonecfg:zfszone> create zonecfg:zfszone> set zonepath=/zonepool/zones zonecfg:zfszone> verify zonecfg:zfszone> exit # zoneadm -z zfszone install cannot create ZFS dataset zonepool/zones: dataset already exists Preparing to install zone <zfszone>. Creating list of files to copy from the global zone. Copying <8960> files to the zone. . . . |
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 zfszone running /zonepool/zones native shared # lucreate -n zfs1009BE . . . # luactivate zfs1009BE . . . # init 6 # luupgrade -u -n zfs1009BE -s /net/install/export/s10u8/combined.s10s_u8wos/latest 40410 blocks miniroot filesystem is <lofs> Mounting miniroot at </net/system/export/s10u8/latest/Solaris_10/Tools/Boot> Validating the contents of the media </net/system/export/s10u8//latest>. The media is a standard Solaris media. The media contains an operating system upgrade image. The media contains <Solaris> version <10>. Constructing upgrade profile to use. Locating the operating system upgrade program. Checking for existence of previously scheduled Live Upgrade requests. Creating upgrade profile for BE <zfs1009BE>. Determining packages to install or upgrade for BE <zfs1009BE>. Performing the operating system upgrade of the BE <zfs1009BE>. CAUTION: Interrupting this process may leave the boot environment unstable or unbootable. Upgrading Solaris: 100% completed Installation of the packages from this media is complete. Updating package information on boot environment <zfs1009BE>. Package information successfully updated on boot environment <zfs1009BE>. Adding operating system patches to the BE <zfs1009BE>. The operating system patch installation is complete. INFORMATION: The file </var/sadm/system/logs/upgrade_log> on boot environment <zfs1009BE> contains a log of the upgrade operation. INFORMATION: The file </var/sadm/system/data/upgrade_cleanup> on boot environment <zfs1009BE> contains a log of cleanup operations required. INFORMATION: Review the files listed above. Remember that all of the files are located on boot environment <zfs1009BE>. Before you activate boot environment <zfs1009BE>, determine if any additional system maintenance is required or if additional media of the software distribution must be installed. The Solaris upgrade of the boot environment <zfs1009BE> is complete. Installing failsafe Failsafe install is complete. # luactivate zfs1009BE # init 6 # lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfs509BE yes no no yes - zfs1009BE yes yes yes no - # zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared - zfszone installed /zonepool/zones native shared |
Данная процедура позволяет обновить систему с корневой файловой системой UFS и корнем зоны до выпуска Solaris 10 5/09 или Solaris 10 10/09. После этого следует создать среду загрузки ZFS с помощью Live Upgrade.
В приведенной ниже последовательности действий образцовая среда загрузки UFS названа c0t1d0s0, корень зоны UFS – zonepool/zfszone, а корневая загружаемая среда ZFS – zfs1009.
Обновите систему до версии Solaris 10 5/09 или Solaris 10 10/09, если используется более ранняя версия Solaris 10.
Дополнительные сведения об обновлении системы с функционирующей версией Solaris 10 приведены в документе Solaris 10 Installation Guide: Solaris Live Upgrade and Upgrade Planning.
Создайте корневой пул.
Дополнительные сведения о требованиях к корневому пулу приведены в разделе Требования к установке Solaris и Solaris Live Upgrade для поддержки ZFS .
Убедитесь в загрузке зон из среды UFS. Пример:
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 zfszone running /zonepool/zones native shared |
Создайте новую среду загрузки ZFS. Пример:
# lucreate -c c1t1d0s0 -n zfs1009 -p rpool |
С помощью этой команды устанавливаются наборы данных в корневом пуле для новой среды загрузки и текущая среда загрузки (включая зоны) копируется в эти наборы данных.
Активируйте новую среду загрузки ZFS. Пример:
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- c1t1d0s0 yes yes yes no - zfs1009BE yes no no yes - # luactivate zfs1009BE A Live Upgrade Sync operation will be performed on startup of boot environment <zfs1009BE>. . . . |
Перезагрузите систему.
# init 6 |
Убедитесь в том, что в новой среде загрузки созданы файловые системы ZFS и зоны. Пример:
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 6.17G 60.8G 98K /rpool rpool/ROOT 4.67G 60.8G 21K /rpool/ROOT rpool/ROOT/zfs1009BE 4.67G 60.8G 4.67G / rpool/dump 1.00G 60.8G 1.00G - rpool/swap 517M 61.3G 16K - zonepool 634M 7.62G 24K /zonepool zonepool/zones 270K 7.62G 633M /zonepool/zones zonepool/zones-c1t1d0s0 634M 7.62G 633M /zonepool/zones-c1t1d0s0 zonepool/zones-c1t1d0s0@zfs1009BE 262K - 633M - # zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared - zfszone installed /zonepool/zones native shared |
В этом примере выполняется перенос системы Solaris 10 10/09 с корневой файловой системой UFS и корнем зоны (/uzone/ufszone) и некорневым пулом ZFS (pool), а также корнем зоны (/pool/zfszone) на корневую файловую систему ZFS. Перед началом переноса следует убедиться в том, что создан корневой пул ZFS, а зоны установлены и загружены.
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 ufszone running /uzone/ufszone native shared 3 zfszone running /pool/zones/zfszone native shared |
# lucreate -c ufs1009BE -n zfs1009BE -p rpool Analyzing system configuration. No name for current boot environment. Current boot environment is named <ufs509BE>. Creating initial configuration for primary boot environment <ufs509BE>. The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID. PBE configuration successful: PBE name <ufs1009BE> PBE Boot Device </dev/dsk/c1t0d0s0>. Comparing source boot environment <ufs1009BE> file systems with the file system(s) you specified for the new boot environment. Determining which file systems should be in the new boot environment. Updating boot environment description database on all BEs. Updating system configuration files. The device </dev/dsk/c1t1d0s0> is not a root device for any boot environment; cannot get BE ID. Creating configuration for boot environment <zfs1009BE>. Source boot environment is <ufs1009BE>. Creating boot environment <zfs1009BE>. Creating file systems on boot environment <zfs1009BE>. Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfs1009BE>. Populating file systems on boot environment <zfs1009BE>. Checking selection integrity. Integrity check OK. Populating contents of mount point </>. Copying. Creating shared file system mount points. Copying root of zone <ufszone> to </.alt.tmp.b-EYd.mnt/uzone/ufszone>. Creating snapshot for <pool/zones/zfszone> on <pool/zones/zfszone@zfs1009BE>. Creating clone for <pool/zones/zfszone@zfs1009BE> on <pool/zones/zfszone-zfs1009BE>. Creating compare databases for boot environment <zfs1009BE>. Creating compare database for file system </rpool/ROOT>. Creating compare database for file system </>. Updating compare databases on boot environment <zfs1009BE>. Making boot environment <zfs1009BE> bootable. Creating boot_archive for /.alt.tmp.b-DLd.mnt updating /.alt.tmp.b-DLd.mnt/platform/sun4u/boot_archive Population of boot environment <zfs1009BE> successful. Creation of boot environment <zfs1009BE> successful. # lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- ufs1009BE yes yes yes no - zfs1009BE yes no no yes - # luactivate zfs1009BE . . . # init 6 . . . # zfs list NAME USED AVAIL REFER MOUNTPOINT pool 628M 66.3G 19K /pool pool/zones 628M 66.3G 20K /pool/zones pool/zones/zfszone 75.5K 66.3G 627M /pool/zones/zfszone pool/zones/zfszone-ufs1009BE 628M 66.3G 627M /pool/zones/zfszone-ufs1009BE pool/zones/zfszone-ufs1009BE@zfs1009BE 98K - 627M - rpool 7.76G 59.2G 95K /rpool rpool/ROOT 5.25G 59.2G 18K /rpool/ROOT rpool/ROOT/zfs1009BE 5.25G 59.2G 5.25G / rpool/dump 2.00G 59.2G 2.00G - rpool/swap 517M 59.7G 16K - # zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared - ufszone installed /uzone/ufszone native shared - zfszone installed /pool/zones/zfszone native shared |