Руководство по системному администрированию: контейнеры в Solaris - управление ресурсами и зонами

Параметры пакетов

Настройка параметров пакетов для зон

Характеристики пакетов в системе с установленными зонами определяются параметрами пакетов SUNW_PKG_ALLZONES , SUNW_PKG_HOLLOW и SUNW_PKG_THISZONE. Эти параметры необходимы для управления пакетами в системе с установленными неглобальными зонами.

В приведенной ниже таблице перечислены четыре допустимых сочетания для настройки параметров пакета. Комбинации настроек, не указанные в этой таблице, недопустимы, и в случае их выбора установка пакета невозможна.

Убедитесь в настройке всех трех параметров пакета. Значения всех трех параметров пакета указывать не обязательно. Средства пакетов интерпретируют отсутствие параметра пакета зоны как значение false, однако это значительно затрудняет установку пакета. Настройка всех трех параметров позволяет точно определить требуемое поведение средств при установке или удалении пакета.

Таблица 24–1 Допустимые значения параметров пакета

Параметр SUNW_PKG_ALLZONES

Параметр SUNW_PKG_HOLLOW

Параметр SUNW_PKG_THISZONE

Описание пакета 

false 

false 

false 

Это настройка для пакетов по умолчанию, не определяющая значения всех параметров пакета зоны. 

Пакет с такими параметрами может быть установлен в глобальной или в неглобальной зоне.  

  • При выполнении команды pkgadd в глобальной зоне пакет устанавливается в глобальной зоне и во всех неглобальных зонах.

  • При выполнении команды pkgadd в неглобальной зоне пакет устанавливается только в неглобальной зоне.

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

false 

false 

true 

Пакет с такими параметрами может быть установлен в глобальной или в неглобальной зоне. Если новые неглобальные зоны созданы после установки, то на эти зоны пакет не распространяется. 

  • При выполнении команды pkgadd в глобальной зоне пакет устанавливается только в глобальной зоне.

  • При выполнении команды pkgadd в неглобальной зоне пакет устанавливается только в неглобальной зоне.

В обоих случаях все содержимое пакета является видимым в зоне, в которой установлен пакет. 

true 

false 

false 

Пакет с такими параметрами может быть установлен только в глобальной зоне. При выполнении команды pkgadd пакет устанавливается в глобальной зоне и во всех неглобальных зонах. Все содержимое пакета является видимым во всех зонах.


Примечание –

Все попытки установки пакета в неглобальной зоне будут неуспешными.


true 

true 

false 

Пакет с такими параметрами может быть установлен только глобальным администратором в глобальной зоне. При выполнении команды pkgadd все содержимое пакета устанавливается в глобальной зоне. Если для параметров пакета заданы эти значения, то содержимое пакета не предоставляется ни для одной неглобальной зоны. В неглобальных зонах используется только информация по установке пакета, необходимая для отображения пакета как установленного. Это позволяет установить другие пакеты, зависящие от данного пакета.

Для проверки зависимостей пакет отображается как установленный во всех зонах. 

  • В глобальной зоне все содержимое пакета является видимым.

  • Во всех корневых неглобальных зонах содержимое пакета не является видимым.

  • При наследовании неглобальной зоной файловой системы из глобальной зоны пакет, установленный в этой файловой системе, является видимым в неглобальной зоне. Все остальные файлы, содержащиеся в пакете, не являются видимыми в неглобальной зоне.

    Например, неглобальная зона с унаследованными каталогами совместно использует определенные каталоги с глобальной зоной. Эти каталоги предназначены только для чтения. Неглобальные зоны с унаследованными каталогами совместно используют файловую систему /platform с другими зонами. В качестве другого примера можно привести пакеты, содержащие файлы, используемые только для аппаратных средств загрузки.


Примечание –

Все попытки установки пакета в неглобальной зоне будут неуспешными.


Параметр пакета SUNW_PKG_ALLZONES

Дополнительный параметр пакета SUNW_PKG_ALLZONES определяет область действия зоны пакета. Этот параметр определяет следующее:

Параметр пакета SUNW_PKG_ALLZONES имеет два допустимых значения. Это значения true и false. Значение по умолчанию – false. Если этот параметр не установлен или имеет значение, отличное от true или false, используется значение false.

Параметр SUNW_PKG_ALLZONES должен иметь значение true для пакетов, которые во всех зонах должны относиться к одной версии пакета и уровню изменений исправления. Для любого пакета, функциональность которого зависит от конкретного ядра Solaris, например Solaris 10, этот параметр должен иметь значение true. Для любого исправления пакета значение параметра SUNW_PKG_ALLZONES должно быть таким же, как и в установленном пакете, к которому применяется исправление. Уровень изменения исправления для любого пакета, для которого этот параметр имеет значение true, должен быть одинаковым во всех зонах.

Для пакетов, функциональность которых не зависит от конкретного ядра Solaris, например сторонних пакетов или компиляторов Sun, этот параметр должен иметь значение false. Любое исправление для пакета, для которого этот параметр имеет значение false, также должен иметь значение false для этого параметра. Версия пакета или уровень изменения исправления для любого пакета, для которого этот параметр имеет значение false, могут различаться в зависимости от зоны. Например, две неглобальные зоны имеют различные версии установленного веб-сервера.

Значения параметра пакета SUNW_PKG_ALLZONES описаны в следующей таблице.

Таблица 24–2 Значения параметра пакета SUNW_PKG_ALLZONES

Значение 

Описание 

false

Этот пакет можно установить из глобальной зоны только в глобальной зоне или в глобальной зоне и во всех неглобальных зонах. Этот пакет также можно установить из любой неглобальной зоны в той же неглобальной зоне. 

  • Глобальный администратор может установить пакет только в глобальной зоне.

  • Глобальный администратор может установить пакет в глобальной зоне и во всех неглобальных зонах.

  • Администратор зоны может установить пакет в неглобальной зоне.

При удалении из глобальной зоны пакет не удаляется из других зон. Пакет можно удалить из отдельных неглобальных зон. 

  • Пакет не обязательно должен быть установлен в глобальной зоне.

  • Пакет не обязательно должен быть установлен в какой-либо неглобальной зоне.

  • Пакет не обязательно должен быть идентичен во всех зонах. В отдельных зонах могут существовать различные версии пакета.

  • Пакет содержит программное обеспечение, которое не используется совместно всеми зонами неявным образом. Это означает, что пакет не является адаптированным для системы. К этой категории относится большая часть программного обеспечения уровня приложений. В качестве примеров можно привести продукты StarOfficeTM или веб-сервер.

true

При установке в глобальной зоне этот пакет также должен быть установлен во всех неглобальных зонах. При удалении из глобальной зоны пакет также должен быть удален из всех неглобальных зон. 

  • Пакет первоначально устанавливается в глобальной зоне. Затем он автоматически устанавливается во всех неглобальных зонах.

  • Версия пакета должна быть идентичной во всех зонах.

  • Пакет содержит программное обеспечение, которое используется совместно всеми зонами неявным образом. Пакет зависит от версий программного обеспечения, которые используются совместно всеми зонами неявным образом. Пакет должен быть видимым во всех неглобальных зонах. В качестве примеров можно привести модули ядра.

    Эти пакеты позволяют разрешить в неглобальной зоне зависимости пакетов, установленных в глобальной зоне, за счет обязательной установки всего пакета во всех неглобальных зонах.

  • Установить пакет может только глобальный администратор. Администратор зоны не может установить пакет в неглобальной зоне.

Параметр пакета SUNW_PKG_HOLLOW

Параметр пакета SUNW_PKG_HOLLOW определяет видимость пакета в какой-либо неглобальной зоне, если этот пакет должен быть установлен как идентичный во всех зонах.

Параметр пакета SUNW_PKG_HOLLOW имеет два допустимых значения: true и false.

Значения параметра пакета SUNW_PKG_HOLLOW описаны в следующей таблице.

Таблица 24–3 Значения параметра пакета SUNW_PKG_HOLLOW

Значение 

Описание 

false

Этот пакет не является "полым": 

  • При установке в глобальной зоне содержание пакета и информация об установке необходимы во всех неглобальных зонах.

  • Пакет содержит программное обеспечение, которое должно быть видимым во всех неглобальных зонах. В качестве примера можно привести пакет с командой truss.

  • Помимо ограничений текущей параметра SUNW_PKG_ALLZONES, какие-либо дополнительные ограничения отсутствуют.

true

Этот пакет является "полым": 

  • Содержание пакета не распространяется ни на одну неглобальную зону. Однако информация об установке пакета необходима во всех неглобальных зонах.

  • Пакет содержит программное обеспечение, которое не должно быть видимым во всех неглобальных зонах. В качестве примеров можно привести драйверы ядра и файлы конфигурации системы, используемые только в глобальной зоне. Эта настройка позволяет разрешить в неглобальной зоне зависимости пакетов, установленных только в глобальной зоне, без фактической установки данных пакета.

  • Пакет распознается во всех зонах как устанавливаемый в целях проверки зависимостей другими пакетами, зависящими от устанавливаемого пакета.

  • Эта настройка включает все ограничения в случае установки для параметра SUNW_PKG_ALLZONES значения true.

  • В глобальной зоне пакет распознается как установленный, и все компоненты пакета устанавливаются. При установке пакета создаются каталоги, устанавливаются файлы, и действия классов и другие сценарии выполняются соответствующим образом.

  • В неглобальной зоне пакет распознается как установленный, но компоненты пакета не устанавливаются. При установке пакета каталоги не создаются, файлы не устанавливаются, и действия классов и другие установочные сценарии не выполняются.

  • При удалении пакета из глобальной зоны этот пакет распознается в системе как полностью установленный. При удалении пакета соответствующие каталоги и файлы удаляются, и выполняются действия классов и другие установочные сценарии.

Параметр пакета SUNW_PKG_THISZONE

Параметр пакета SUNW_PKG_THISZONE определяет необходимость установки пакета только в текущей, глобальной или неглобальной зоне. Параметр пакета SUNW_PKG_THISZONE имеет два допустимых значения. Это значения true и false. Значение по умолчанию – false.

Значения параметра пакета SUNW_PKG_THISZONE описаны в следующей таблице.

Таблица 24–4 Значения параметра пакета SUNW_PKG_THISZONE

Значение 

Описание 

false

  • При выполнении утилиты pkgadd в неглобальной зоне пакет устанавливается только в текущей зоне.

  • При выполнении утилиты pkgadd в глобальной зоне пакет устанавливается в глобальной зоне, а также во всех установленных в настоящее время неглобальных зонах. Кроме того, пакет распространяется на все устанавливаемые новые неглобальные зоны.

true

  • Пакет устанавливается только в текущей зоне.

  • При установке в глобальной зоне пакет не добавляется ни в одну из существующих в настоящее время или подлежащих созданию неглобальных зон. Это поведение аналогично поведению при указании параметра -G для команды pkgadd.