Ignorer les liens de navigation | |
Quitter l'aperu | |
Pages de manuel d'Image Packaging System Oracle Solaris 11 Information Library (Français) |
- Serveur de dépôt Image Packaging System
/usr/lib/pkg.depotd [-a address] [-d inst_root] [-p port] [-s threads] [-t socket_timeout] [--add-content] [--cfg] [--content-root] [--debug feature_list] [--disable-ops=op[/1][,...]] [--log-access] [--log-errors] [--mirror] [--proxy-base url] [--readonly] [--rebuild] [--ssl-cert-file] [--ssl-dialog] [--ssl-key-file] [--writable-root]
pkg.depotd correspond au serveur de dépôt du système d'empaquetage d'image. Il offre un accès réseau aux données stockées dans un référentiel de packages. Les clients qui ne prennent pas en charge l'accès direct au référentiel par le biais du système de fichiers, ou pour lesquels l'accès réseau est la seule méthode de transport disponible ou la méthode préférée, utilisent généralement le dépôt de packages.
Les clients tels que pkg(1), le client d'extraction, peuvent extraire une liste de packages et de métadonnées de package à partir d'un référentiel, directement ou par l'intermédiaire du serveur de dépôt. pkgsend(1), le client de publication, peut envoyer de nouvelles versions des packages à un référentiel directement ou par l'intermédiaire du serveur de dépôt. pkgrepo(1) peut servir à créer des référentiels à utiliser avec le serveur de dépôt, ou pour les gérer directement et par le biais le serveur de dépôt.
pkg.depotd est généralement exécuté en tant que service sur le système. Les développeurs de package et de logiciels peuvent exécuter des copies privées à fins de test.
Le dépôt n'offre pas de méthodes de contrôle d'accès. Par défaut, tous les clients en mesure de se connecter sont à même de lire toutes les données de package et de publier de nouvelles versions de package. Il existe une exception lors d'une exécution sous l'utilitaire de gestion des services (SMF) : la valeur par défaut est d'exécuter en mode lecture seule. Les remarques qui suivent décrivent certaines des meilleures pratiques pour le maintien d'un serveur de dépôt public en constante évolution.
Le serveur pkg.depot est généralement configuré à l'aide des propriétés smf(5) associées à son service. Les propriétés suivantes sont reconnues :
(net_address) Adresse IP sur laquelle écouter les connexions. La valeur par défaut est 0.0.0.0 (INADDR_ANY), qui est à l'écoute sur toutes les interfaces actives. Pour écouter sur toutes les interfaces IPv6 actives, utilisez ::. Seule la première valeur est utilisée.
(astring) Chemin d'accès au système de fichiers au niveau duquel l'instance doit trouver son contenu statique et tout autre contenu Web. La valeur par défaut est /usr/share/lib/pkg.
(astring) Liste séparée par des virgules de fonctions de débogage à activer. Les valeurs possibles sont les suivantes :
Consigne les en-têtes de chaque demande dans le journal des erreurs.
(astring) Liste séparée par des virgules d'opérations qui doivent être désactivées pour le serveur de dépôt. Les opérations sont données comme operation[/version] (catalog ou search_1, par exemple).
(astring) Chemin d'accès à l'image dont les informations de fichier seront utilisées comme cache pour les données de fichiers.
(astring) Chemin d'accès au système de fichiers au niveau duquel l'instance doit trouver ses données de référentiel. Obligatoire sauf si file_root ou PKG_REPO est fourni. La valeur par défaut est /var/pkgrepo.
(astring) Destination pour toute information d'accès consignée par le processus de dépôt. Les valeurs possibles sont stderr, stdout, none ou un nom de chemin absolu. La valeur par défaut est stdout si stdout est un tty. Si stdout n'est pas un tty, la valeur par défaut est none.
(astring) Destination de toute erreur ou autre information consignée par le processus de dépôt. Les valeurs possibles sont stderr, stdout, none ou un nom de chemin absolu. La valeur par défaut est stderr.
(boolean) Indique si le mode de mise en miroir de package est utilisé. Lorsque la valeur de cette option est True (Vrai), les opérations de publication et de métadonnées sont désactivées et l'interface utilisateur de navigateur fournie est limitée. Cette propriété ne peut pas être définie sur true lorsque la propriété pkg/readonly est true. La valeur par défaut est false.
(count) Numéro de port d'écoute des requêtes de package entrantes pour cette instance. Si un certificat SSL et des informations de clés n'ont pas été fournis, la valeur par défaut est 80. Dans le cas contraire, la valeur par défaut est 443.
(uri) Permet de modifier l'URL de base pour le serveur de dépôt et s'avère particulièrement utile lorsqu'il s'exécute derrière Apache ou un autre serveur Web, dans une configuration de proxy inversé.
(boolean) Définit si des opérations de modification, comme celles lancées par pkgsend(1), sont désactivées. Les opérations de récupération sont toujours disponibles. Cette propriété ne peut pas être définie sur true lorsque la propriété pkg/mirror est true. La valeur par défaut est true.
(count) Nombre maximal de secondes pendant lesquelles le serveur doit attendre une réponse d'un client avant la fermeture d'une connexion. La valeur par défaut est 60.
(count) Taille maximale du fichier de tri de l'indexeur. Permet de limiter la quantité de RAM utilisée par le dépôt pour l'indexation ou de l'augmenter pour la vitesse.
(astring) Nom de chemin absolu d'un fichier de certificat chiffré en PEM. La valeur par défaut est none. Cette propriété doit être utilisée avec ssl_key_file. Le dépôt répond aux demandes SSL uniquement si ssl_cert_file et /ssl_key_file sont fournis.
(astring) Spécifie la méthode à utiliser pour obtenir la phrase de passe nécessaire pour déchiffrer le fichier ssl_key_file. Les valeurs possibles sont les suivantes :
Invite pour la phrase de passe. Il s'agit de la valeur par défaut.
Exécutez le programme externe spécifié pour obtenir la phrase de passe. Le premier argument pour le programme est '' et est réservé. Le deuxième argument pour le programme est le numéro de port du serveur. La phrase de passe est imprimée sur stdout.
Tente de récupérer la valeur de la propriété pkg_secure/ssl_key_passphrase à partir de l'instance de service associée au FMRI.
(astring) Nom de chemin absolu d'un fichier de clés privées chiffré en PEM. Cette propriété doit être utilisée avec ssl_cert_file. Le dépôt répond aux demandes SSL uniquement si /ssl_key_file et ssl_cert_file sont fournis.
(count) Nombre de threads démarrés pour traiter les demandes. La valeur par défaut est 60. Convient uniquement aux petits déploiements. Cette valeur doit être égale à environ 20 fois le nombre de clients simultanés. La valeur maximale de threads est fixée à 5000.
(astring) Chemin d'accès au système de fichiers sur un répertoire auquel le programme a accès en écriture. Avec l'option -readonly, elle permet au serveur de dépôt de créer des fichiers, notamment les index de recherche, sans avoir accès en écriture aux informations sur le package.
(astring) Mot de passe à utiliser pour déchiffrer le pkg/ssl_key_file. Cette valeur est protégée par une autorisation en lecture à l'aide de l'attribut solaris.smf.read.pkg-server.
La présentation et le comportement de l'interface utilisateur du navigateur du serveur de dépôt sont contrôlés à l'aide des propriétés suivantes :
(astring) Paragraphe descriptif pour le flux RSS/Atom.
(astring) Nom du chemin d'une petite image utilisée pour représenter le flux RSS/Atom. Le nom du chemin doit être relatif à content_root. La valeur par défaut est web/_themes/pkg-block-icon.png.
(astring) Nom du chemin d'une image de grande taille qui sera utilisée pour marquer ou identifier visuellement le flux RSS/Atom. Cette valeur doit être relative à content_root. La valeur par défaut est web/_themes/pkg-block-icon.png.
(astring) Nom court et descriptif des flux RSS/Atom généré par le dépôt desservant le référentiel. La valeur par défaut est “package repository feed”.
(count) Nombre d'heures avant la génération du dernier flux pour le référentiel, à inclure lors de la génération du flux.
Le dépôt de packages est également capable de servir de serveur miroir pour les images de client local depuis pkg(5). Cela permet à des clients partageant un sous-réseau sur un réseau local de refléter leurs caches de fichiers. Les clients peuvent télécharger des fichiers l'un de l'autre, réduisant ainsi la charge sur le serveur de dépôt de packages. Cette fonctionnalité est disponible sous la forme d'un autre service de dépôt configuré par smf(5). Elle utilise mDNS et dns-sd pour la détection des services.
Le miroir mDNS est généralement configuré à l'aide des propriétés smf(5) associées à son service. Les propriétés suivantes sont reconnues :
(astring) Chemin d'accès à l'image dont les informations de fichier seront utilisées comme cache pour les données de fichiers. La valeur par défaut est /.
(count) Numéro de port d'écoute des requêtes de package entrantes pour cette instance. La valeur par défaut est 80.
pkg.depotd peut lire ses informations de configuration de base à partir d'un fichier ou des données de propriété d'une instance de service smf(5) existante.
Nom de chemin du fichier à utiliser pour la lecture et l'écriture des données de configuration ou bien chaîne au format smf:fmri, où fmri est l'identificateur de ressource de gestion des pannes (FMRI) de l'instance depuis laquelle il faut lire les données de configuration. Pour plus de détails sur le format du fichier spécifié, reportez-vous à la section “Configuration du dépôt” ci-dessous.
En l'absence de source de configuration préexistante ou pour remplacer des valeurs lues à partir d'un fichier de configuration fourni à l'aide de --cfg, vous pouvez utiliser les options suivantes afin de modifier le comportement par défaut du serveur de dépôt :
Reportez-vous à la section pkg/address ci-dessus.
Reportez-vous à la section pkg/content_root ci-dessus.
Reportez-vous à la section pkg/inst_root ci-dessus.
Reportez-vous à la section pkg/debug ci-dessus.
Reportez-vous à la section pkg/disable_ops ci-dessus.
Reportez-vous à la section pkg/image_root ci-dessus.
Reportez-vous à la section pkg/log_access ci-dessus.
Reportez-vous à la section pkg/log_errors ci-dessus.
Reportez-vous à la section pkg/mirror ci-dessus.
Reportez-vous à la section pkg/port ci-dessus.
Reportez-vous à la section pkg/proxy_base ci-dessus. Cette option est ignorée si une valeur vide est fournie.
Reportez-vous à la section pkg/readonly ci-dessus.
Reportez-vous à la section pkg/threads ci-dessus.
Reportez-vous à la section pkg/sort_file_max_size ci-dessus.
Reportez-vous à la section pkg/ssl_cert_file ci-dessus.
Reportez-vous à la section pkg/ssl_dialog ci-dessus.
Reportez-vous à la section pkg/ssl_key_file ci-dessus.
Reportez-vous à la section pkg/socket_timeout ci-dessus.
Reportez-vous à la section pkg/writable_root ci-dessus.
D'autres fonctionnalités d'administration et de gestion pour les référentiels de packages sont fournies par pkgrepo(1).
Lorsqu'un fichier de configuration est fourni (au lieu d'un FMRI smf(5)) à l'aide de l'option --cfg, le serveur de dépôt lit et écrit toutes les données de configuration dans un format de texte simple. Les données de configuration sont décrites dans la section “Propriétés SMF” ci-dessus. Les données de configuration se composent de sections, qui commencent par un en-tête [section], suivi d'entrées name = value. Les suites sont dans le style de RFC 822. Les valeurs peuvent être réparties sur plusieurs lignes en insérant un espace au début des lignes de suite.
Les valeurs requises non fournies dans le fichier de configuration doivent être fournies à l'aide de l'option figurant dans la section Options ci-dessus. Un exemple de fichier de configuration peut ressembler à ceci :
[pkg] port = 80 inst_root = /export/repo [pub_example_com] feed_description = example.com's software update log
Exemple 1 Activation du serveur de dépôt
# svcadm enable application/pkg/server
Exemple 2 Modification du port d'écoute du serveur
# svccfg -s application/pkg/server setprop pkg/port = 10000 # svcadm refresh application/pkg/server # svcadm restart application/pkg/server
Exemple 3 Activation du miroir
# svcadm enable application/pkg/dynamic-mirror
Spécifie le répertoire qui contient le référentiel à servir. Cette valeur est ignorée si -d est spécifié.
Spécifie le répertoire de stockage du contenu statique servi par le dépôt. Les fichiers répertoriés ci-dessous sous Fichiers doivent être présents dans ce répertoire, bien que leur contenu puisse être différent de celui du contenu fourni par défaut.
Les valeurs de sortie renvoyées sont les suivantes :
Opération réussie.
Une erreur s'est produite.
Des options de ligne de commande incorrectes ont été spécifiées.
Une exception imprévue est survenue.
Emplacement du contenu de la présentation par défaut. Modifiez pkg/content_root pour sélectionner un autre emplacement.
Reportez-vous à attributes(5) pour obtenir la description des attributs suivants :
|
dns-sd(1M), mdnsd(1M), pkg(1), pkgrepo(1), pkgsend(1), syslogd(1M), smf(5)
http://hub.opensolaris.org/bin/view/Project+pkg/
Le service pkd.depotd est géré par SMF sous l'identifiant de service svc:/application/pkg/server.
Le service de miroir mDNS est géré par SMF sous l'identifiant de service svc:/application/pkg/dynamic-mirror.
Pour contrôler l'accès en lecture au dépôt, vous pouvez utiliser un proxy inverse HTTP en combinaison avec des méthodes d'authentification, telles que l'accès client en fonction du certificat SSL, que pkg(1) prend en charge en natif.
Les modifications apportées à la configuration ou aux données du package à l'aide d'opérations sur le système de fichiers exigent un redémarrage du processus de serveur de dépôt afin que les modifications soient répercutées dans les opérations et la sortie. Suivez l'une des méthodes ci-après pour redémarrer le processus de serveur de dépôt :
Utilisez svcadm(1M) pour redémarrer l'instance application/pkg/server.
Envoyez un signal SIGUSR1 vers le processus de serveur de dépôt en utilisant kill(1). Cette opération exécute un “redémarrage progressif”, qui laisse le processus intact mais recharge toutes les données de configuration, de package et de recherche :
# kill -USR1 pid