Red Hat Training

A Red Hat training course is available for Red Hat Satellite

Chapitre 6. Téléchargement et maintenance de paquetages personnalisés

Selon le service Red Hat Network utilisé, il existe deux mécanismes différents pour télécharger les paquetages vers des canaux privés.
Les clients du RHN Proxy Server utilisent l'application RHN Package Manager, qui envoie des informations d'en-tête de paquetages aux serveurs Red Hat Network centraux et place le paquetage dans le référentiel local du Proxy qui a appelé le RHN Package Manager.
Les clients du RHN Satellite Server utilisent l'application RHN Push, qui envoie des informations d'en-tête de paquetages au RHN Satellite Server local et place le paquetage dans le référentiel local du Satellite qui a appelé RHN Push.
Ce chapitre présente ces deux outils en détails.

Avertissement

Si vous utilisez le RHN Proxy Server et le RHN Satellite Server, utilisez uniquement RHN Push. La combinaison Proxy-Satellite requiert que les paquetages personnalisés et les canaux soient téléchargés uniquement vers le Satellite. Les serveurs du Proxy y obtiennent les paquetages et les distribuent aux systèmes client.

6.1. Télécharger des paquetages sur RHN Proxy Server

Le gestionnaire de paquetages RHN RHN Package Manager permet à une organisation de servir des paquetages personnalisés associés à un canal RHN privé via RHN Proxy Server. Si l'organisation souhaite que RHN Proxy Server serve uniquement les paquetages Red Hat Enterprise Linux officiels, alors n'installez pas le gestionnaire RHN Package Manager.
Pour utiliser le RHN Package Manager, installez le paquetage RPM rhns-proxy-package-manager et ses dépendances. Ce paquetage est disponible aux systèmes du RHN Proxy Server enregistrés et est installé en exécutant up2date rhns-proxy-package-manager.

Note

Seules les informations d'en-tête pour les paquetages sont téléchargées vers les serveurs RHN. Les en-têtes sont requis pour que RHN puisse résoudre les dépendances de paquetages pour les systèmes client. Les fichiers de paquetages actuels (*.rpm) sont stockés sur le RHN Proxy Server. Pour cette raison, les paquetages personnalisés ne peuvent pas être téléchargés via le site Web de RHN, bien qu'ils y soient listés. Ils doivent être obtenus par le système client à l'aide de up2date.

6.1.1. Configuration et utilisation du RHN Package Manager

Avant de pouvoir utiliser le RHN Package Manager pour télécharger des paquetages dans RHN, vous devez tout d'abord copier manuellement les paquetages sur le serveur Proxy. Par exemple, depuis un hôte de développement, vous pouvez utiliser scp :
scp foo.rpm root@rhnproxy.example.com:/tmp
Lors de l'utilisation du RHN Package Manager pour télécharger des fichiers dans Red Hat Network, pointez vers les fichiers que vous avez précédemment copiés sur le serveur.

Note

Créez au moins un canal privé pour recevoir les paquetages personnalisés avant de les télécharger vers Red Hat Network, vu qu'un canal est requis pour les systèmes pour obtenir les paquetages.
La commande suivante télécharge les en-têtes de paquetages vers les serveurs RHN et copie les paquetages dans le référentiel du RHN Proxy Server :
rhn_package_manager -c label_of_private_channelpkg-list
label_of_private_channel est le canal personnalisé créé pour recevoir ces paquetages. Assurez-vous d'utiliser la bonne étiquette de canal spécifiée durant sa création. Si vous avez un ou plusieurs canaux spécifiés (à l'aide de -c ou --channel), les en-têtes de paquetages téléchargés sont liés à tous les canaux identifiés. Si vous ne spécifiez pas un canal, les paquetages sont placés dans la section Aucun canal de la page Gestion de paquetages. Reportez-vous à la Section 4.6, « Assigner des paquetages aux canaux de logiciels » pour obtenir des instructions pour réassigner des paquetages.
La référence pkg-list représente la liste de paquetages à télécharger. Ces paquetages doivent être déjà copiés physiquement sur l'hôte du Proxy. Alternativement, utilisez l'option -d pour spécifier le répertoire local qui contient les paquetages à ajouter au canal. Le RHN Package Manager peut également lire la liste de paquetages de l'entrée standard (à l'aide de --stdin).
D'autres options sont spécifiées dans un fichier de configuration, comme l'URL du serveur Red Hat Network, le nom d'utilisateur et le mot de passe proxy HTTP (si votre proxy HTTP requiert une authentification) et le répertoire supérieur où réside les paquetages. Cette configuration spéciale ne doit pas être éditée et se trouve dans /etc/rhn/default/rhn_proxy_package_manager.conf. Vous pouvez écraser les choix dans ce fichier de configuration par défaut avec les paramètres dans le fichier de configuration principal /etc/rhn/rhn.conf ou via les options en ligne de commande passées au RHN Package Manager.
Les paramètres qui ne sont pas définis dans ce fichier sont lus de .rhn_package_manager dans le répertoire personnel de l'utilisateur connecté couramment et finalement de /etc/rhn/rhn_package_manager.conf. Assurez-vous que ces fichiers ont les permissions appropriées pour empêcher d'autres de les lire.
Après avoir téléchargé les paquetages, vérifiez si le répertoire local est en synchronisation avec l'image du serveur RHN des canaux :
rhn_package_manager -s -c name_of_private_channel
Cette option -s liste tous les paquetages manquants, qui sont des paquetages téléchargés vers le serveur RHN mais pas présents dans le répertoire local. Vous devez être un administrateur d'organisation pour utiliser cette option. L'application vous demande de saisir votre nom d'utilisateur et mot de passe RHN.
L'option --copyonly copie le fichier listé dans l'argument dans le canal spécifié sans le télécharger vers le Satellite. Cette option est utile lorsqu'un paquetage manque à un canal sur un RHN Proxy Server et vous ne souhaitez pas réimporter tous les paquetages dans le canal.
rhn_package_manager -c channel-name --copyonly /path/to/missing/file
Vous pouvez également utiliser le RHN Package Manager pour obtenir une liste de paquetages dans un canal, comme ils sont stockés par le serveur RHN :
rhn_package_manager -l -c name_of_private_channel
L'option -l liste le nom de paquetage, le numéro de version, le numéro de publication, l'architecture et le nom de canal pour chaque paquetage dans le ou les canaux spécifiés. Consultez le Tableau 6.1, « options de rhn_package_manager » pour des options supplémentaires.
Tableau 6.1, « options de rhn_package_manager » est un résumé de toutes les options en ligne de commande pour le RHN Package Manager (rhn_package_manager) :

Tableau 6.1. options de rhn_package_manager

Option Description
-v, --verbose Augmente les commentaires des messages de sortie standard.
-d, --dir DIRECTORY_NAME Traite les paquetages de ce répertoire.
-c, --channel CHANNEL_NAME Spécifie le canal qui recevra les paquetages. Plusieurs canaux peuvent être spécifiés à l'aide de plusieurs instances de -c (par exemple : -c channel_one -c channel_two).
-n, --count NUMBER Traite ce nombre d'en-têtes par appel — la valeur par défaut est 32.
-l, --list Liste les paquetages dans le ou les canaux spécifiés.
-s, --sync Vérifie si le répertoire local est synchronisé avec le serveur.
-p, --printconf Imprime la configuration courante et quitte.
--newest Pousse uniquement les paquetages qui sont plus récents que ceux sur le serveur. Notez que les paquetages source sont spéciaux vu que leurs versions ne sont jamais comparées entre elles. Leur nouveauté dépend de leurs paquetages binaires associés. Utiliser cette option avec le RHN Package Manager et seulement un paquetage source télécharge le paquetage, mais le paquetage source n'apparaît pas dans l'interface Web de RHN jusqu'à ce que le paquetage binaire associé soit téléchargé. Comparez cette option avec --source. Utiliser --source --newest ensemble télécharge bien le paquetage source autonome avec les paquetages plus récents et ne nécessite pas qu'un paquetage binaire associé soit téléchargé d'abord.
--source Télécharge les paquetages source indiqués. Cette opération les traite comme des paquetages autonomes, simples et non pas comme des paquetages source spéciaux associés à un autre paquetage binaire préexistant. Par exemple, vous pouvez l'utiliser lorsque vous souhaitez distribuer la source d'applications aux développeurs et aux testeurs en-dehors de la gestion de contrôle de source normale.
--stdin Lit les noms de paquetages de l'entrée standard.
--nosig N'échoue pas si les paquetages ne sont pas signés.
--no-ssl Désactive SSL (pas recommandé).
--stdin Lit les noms de paquetages de l'entrée standard.
--username USERNAME Spécifie le nom d'utilisateur de RHN. S'il n'est pas fourni, le système vous demande de saisir le nom d'utilisateur d'un administrateur de canaux valide.
--password PASSWORD Spécifie le mot de passe de RHN. S'il n'est pas fourni, le système vous demande de saisir le mot de passe d'un administrateur de canaux valide.
--dontcopy Dans l'étape après le téléchargement, ne copie pas les paquetages dans leur emplacement final dans l'arborescence de paquetages.
--copyonly Copie uniquement les paquetages, ne les réimporte pas.
--test Affiche uniquement une liste des paquetages à pousser.
-?, --help Affiche l'écran d'aide avec une liste d'options.
--usage Décrit brièvement les options disponibles.
--copyonly Copie uniquement les paquetages.

Note

Ces options en ligne de commande sont également décrites dans la page de manuel de rhn_package_manager : man rhn_package_manager.