JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Pages de manuel d'Image Packaging System     Oracle Solaris 11 Information Library (Français)
search filter icon
search icon

Informations document

Préface

Commandes utilisateur

packagemanager(1)

pkg(1)

pkgdepend(1)

pkgdiff(1)

pkgfmt(1)

pkglint(1)

pkgmerge(1)

pkgmogrify(1)

pkgrecv(1)

pkgrepo(1)

pkgsend(1)

pkgsign(1)

pm-updatemanager(1)

Commandes d'administration système

Normes, environnements et macros

pkgmerge

- Utilitaire de fusion de package Image Packaging System

Synopsis

/usr/bin/pkgmerge [-n] -d dest_repo
    -s variant=value[,...],src_repo ...
    [pkg_fmri_pattern ...]

Description

pkgmerge est un outil de publication de package permettant la création de packages à variantes multiples. Il effectue cette opération en fusionnant les packages dont les noms et les versions sont identiques (à l'exclusion de l'horodatage), en balisant les actions qui sont uniques dans les versions en cours de fusion avec le nom et la valeur de la variante spécifiée pour la source donnée, puis en publiant les nouveaux packages dans le référentiel cible. Seule la version la plus récente de chaque package de chaque source est utilisée.

Si une action a l'attribut pkg.merge.blend défini sur le nom de la variante en cours de fusion, cette action est copiée dans l'autre manifeste avant la fusion afin que l'action s'affiche sans balise de variante ajouté dans la sortie finale. Notez que l'attribut pkg.merge.blend lui-même est supprimé de toutes les actions dans le manifeste de sortie. Cet attribut peut être répété avec des valeurs différentes pour des fusions à plusieurs passes.

Les actions non identiques qui fournissent au même chemin dans un résultat de manifeste d'entrée entraîne la sortie de pkgmerge avec une erreur.

Options

Les options suivantes sont prises en charge :

-d dest_repo

Chemin de système de fichiers ou URI du référentiel cible vers lequel publier les packages fusionnés. Le référentiel cible doit déjà exister. Les nouveaux référentiels peuvent être créés à l'aide de pkgrepo(1).

-n

Effectue une série de tests sans apporter de modifications au référentiel cible.

-s variant= value[,...],src_repo

Nom et la valeur de la variante à utiliser pour les packages de cette source, suivis par le chemin de système de fichiers ou l'URI du référentiel source ou l'archive de package à partir desquels récupérer les packages. Plusieurs variantes peuvent être spécifiées en les séparant par des virgules. Les mêmes variantes doit être nommées pour toutes les sources. Cette option peut être spécifiée plusieurs fois.

--help ou -?

Affiche un message d'utilisation.

Variables d'environnement

La variable d'environnement suivante est prise en charge :

TMPDIR

Chemin absolu au répertoire dans lequel les données temporaires doivent être stockées lors de l'exécution du programme. Si elle n'est pas définie, la valeur par défaut est de stocker des données temporaires dans /var/tmp.

Exemples

Exemple 1 Spécification du nom et de la valeur de la variante

Marque chaque package trouvé dans la source indiquée avec le nom et la valeur de la variante donnée pour la source à partir de laquelle il a été récupéré.

$ pkgmerge -s arch=sparc,http://src.example.com \
-d http://dest.example.com

Exemple de package :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163427Z
dir group=sys mode=0755 owner=root path=usr

Exemple de package après l'opération :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163427Z
set name=variant.arch value=sparc
dir group=sys mode=0755 owner=root path=usr

Exemple 2 Fusion et publication de packages

Fusionnez la version la plus récente de chaque package des sources données et publiez les nouveaux packages dans le référentiel cible :

$ pkgmerge -s arch=sparc,http://src1.example.com \
-s arch=i386,http://src2.example.com \
-d /path/to/target/repository

Exemple de package depuis la source 1 (SPARC) :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T121410Z
file id mode=0555 owner=root group=bin path=usr/bin/foo
dir group=sys mode=0755 owner=root path=usr

Exemple de package depuis la source 2 (i386) :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163427Z
file id mode=0555 owner=root group=bin path=usr/bin/foo
dir group=sys mode=0755 owner=root path=usr

Package fusionné :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163427Z
set name=variant.arch value=sparc value=i386
file id mode=0555 owner=root group=bin path=usr/bin/foo variant.arch=sparc
file id mode=0555 owner=root group=bin path=usr/bin/foo variant.arch=i386
dir group=sys mode=0755 owner=root path=usr

Exemple 3 Fusion de packages avec débogage et sans débogage pour les systèmes i386 et SPARC

Fusion de la version la plus récente de chaque package dans un ensemble de référentiels avec débogage et sans débogage pour les systèmes i386 et SPARC :

$ pkgmerge -s arch=sparc,debug=false,/repo/sparc-nondebug \
-s arch=sparc,debug=true,/repo/sparc-debug \
-s arch=i386,debug=false,/repo/i386-nondebug \
-s arch=i386,debug=true,/repo/i386-debug \
-d /path/to/target/repository

Exemple de package depuis la source 1 (SPARC sans débogage) :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T121410Z
file id mode=0555 owner=root group=bin path=usr/bin/foo
dir group=sys mode=0755 owner=root path=usr

Exemple de package depuis la source 2 (SPARC avec débogage) :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T121411Z
file id mode=0555 owner=root group=bin path=usr/bin/foo
dir group=sys mode=0755 owner=root path=usr

Exemple de package depuis la source 3 (i386 sans débogage) :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163427Z
file id mode=0555 owner=root group=bin path=usr/bin/foo
dir group=sys mode=0755 owner=root path=usr

Exemple de package depuis la source 4 (i386 avec débogage) :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163428Z
file id mode=0555 owner=root group=bin path=usr/bin/foo
dir group=sys mode=0755 owner=root path=usr

Package fusionné :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163428Z
set name=variant.arch value=sparc value=i386
set name=variant.debug value=false value=true
file id mode=0555 owner=root group=bin path=usr/bin/foo variant.arch=sparc variant.debug=false
file id mode=0555 owner=root group=bin path=usr/bin/foo variant.arch=sparc variant.debug=true
file id mode=0555 owner=root group=bin path=usr/bin/foo variant.arch=i386 variant.debug=false
file id mode=0555 owner=root group=bin path=usr/bin/foo variant.arch=i386 variant.debug=true
dir group=sys mode=0755 owner=root path=usr

Exemple 4 Fusion à l'aide de pkg.merge.blend

Fusion de packages pour deux architectures qui ne se heurtent pas, à l'aide de l'attribut pkg.merge.blend.

$ pkgmerge -s arch=sparc,http://src1/example.com \
-s arch=i386,http://src2.example.com \
-d /path/to/target/repository

Exemple de package depuis la source 1 (SPARC) :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T121410Z
file 1d5eac1aab628317f9c088d21e4afda9c754bb76 mode=0555 owner=root \
    group=bin path=usr/bin/sparc/foo pkg.merge.blend=arch
file d285ada5f3cae14ea00e97a8d99bd3e357caadc0 mode=0555 owner=root \
    group=bin path=usr/bin/foo
dir group=sys mode=0755 owner=root path=usr

Exemple de package depuis la source 2 (i386) :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163427Z
file a285ada5f3cae14ea00e97a8d99bd3e357cb0dca mode=0555 owner=root \
    group=bin path=usr/bin/i386/foo pkg.merge.blend=arch
file d285ada5f3cae14ea00e97a8d99bd3e357caadc0 mode=0555 owner=root \
    group=bin path=usr/bin/foo
dir group=sys mode=0755 owner=root path=usr

Package fusionné :

set name=pkg.fmri value=pkg://example.com/foo@5.11,5.11-0.200:20381001T163427Z
set name=variant.arch value=sparc value=i386
file d285ada5f3cae14ea00e97a8d99bd3e357caadc0 mode=0555 owner=root \
    group=bin path=usr/bin/foo
file a285ada5f3cae14ea00e97a8d99bd3e357cb0dca mode=0555 owner=root \
    group=bin path=usr/bin/i386/foo
file 1d5eac1aab628317f9c088d21e4afda9c754bb76 mode=0555 owner=root \
    group=bin path=usr/bin/sparc/foo
dir group=sys mode=0755 owner=root path=usr

État de sortie

Les valeurs de sortie renvoyées sont les suivantes :

0

La commande a réussi.

1

Une erreur s'est produite.

2

Des options de ligne de commande incorrectes ont été spécifiées.

99

Une exception imprévue est survenue.

Attributs

Reportez-vous à attributes(5) pour obtenir la description des attributs suivants :

TYPE D'ATTRIBUT
VALEUR DE L'ATTRIBUT
Disponibilité
package/pkg
Stabilité de l'interface
Non validé

Voir aussi

pkgrepo(1), pkg(5)

http://hub.opensolaris.org/bin/view/Project+pkg/