Tous les patchs appliqués dans la zone globale sont appliqués à toutes les autres zones. Lorsqu'une zone non globale est installée, elle possède le même niveau de patch que la zone globale. Lorsqu'une zone globale est patchée, toutes les zones non globales le sont aussi. Cela garantit un niveau de patch identique dans toutes les zones.
L'utilitaire système patchadd décrit dans la page de manuel patchadd(1M) permet d'ajouter des patchs à un système comportant des zones installées.
Pour ajouter un patch dans la zone globale et dans toutes les zones non globales, exécutez patchadd en tant qu'administrateur global dans la zone globale.
Lorsque patchadd est exécuté dans la zone globale, les conditions suivantes s'appliquent :
L'utilitaire patchadd est capable d'ajouter les patchs à la zone globale et uniquement à toutes les zones non globales. Il s'agit de l'action par défaut.
L'utilitaire patchadd ne peut pas ajouter de patchs uniquement à la zone globale ou à un sous-ensemble des zones non globales.
Lorsque vous ajoutez un patch à la zone globale et à toutes les zones non globales, il est inutile de tenir compte du fait qu'il affecte ou non des portions de zones partagées avec la zone globale.
L'utilitaire patchadd exécute les actions suivantes :
Le patch est ajouté à la zone globale.
La base de données de patchs de la zone globale est mise à jour.
Le patch est ajouté à chaque zone non globale.
La base de données de patchs de chaque zone non globale est mise à jour.
Lorsqu'il est utilisé dans une zone non globale par l'administrateur de zone, patchadd peut uniquement être employé pour ajouter des patchs à cette zone. Un patch ne peut être ajouté à une zone non globale que dans les cas suivants :
s'il n'affecte aucune portion de zone partagée avec la zone globale ;
si SUNW_PKG_ALLZONES=false pour tous les packages du patch.
L'utilitaire patchadd exécute les actions suivantes :
Le patch est ajouté à la zone.
La base de données de patchs de la zone est mise à jour.
Vous trouverez, ci-dessous, une liste des interactions entre l'option -G et la variable SUNW_PKG_ALLZONES lors de l'ajout d'un patch à une zone globale et à des zones non globales.
Si un ou plusieurs packages possèdent la variable SUNW_PKG_ALLZONES=TRUE, une erreur se produit et aucune action n'a lieu.
Si aucun package ne possède la variable SUNW_PKG_ALLZONES=TRUE, le patch est uniquement appliqué au(x) package(s) de la zone globale.
Si, dans certains packages, SUNW_PKG_ALLZONES=TRUE, le patch est appliqué à ces packages dans toutes les zones.
Si, dans certains packages, SUNW_PKG_ALLZONES=TRUE, le patch est appliqué à ces packages dans toutes les zones adéquates. Les packages uniquement destinés à la zone globale ne sont installés que dans celle-ci.
Si un ou plusieurs packages possèdent la variable SUNW_PKG_ALLZONES=TRUE, une erreur se produit et aucune action n'a lieu.
Si aucun package ne possède la variable SUNW_PKG_ALLZONES=TRUE, le patch est uniquement appliqué aux packages de la zone non globale.