Understanding zmd

Un article de openSUSE.

image:User-away-extended.png Cet article fait référence à une fonctionnalité qui est maintenant obsolète, parce que 'Zmd n'est plus utilisé dans openSUSE'.
Il sera sans doute effacé, à moins qu'il soit remis à niveau. Participez à la mise à jour si vous le pouvez.

Référez-vous à la page de discussion pour plus de renseignements.

Cette page décrit un peu le fonctionnement interne du système Zmd. C'est important pour les personnes qui veulent apprendre ou... qui veulent se plaindre à son propos (pour se plaindre pour la bonne raison 1!) et pour les personnes qui veulent contribuer au projet.

Diagramme fourni par Nat Budin sur #opensuse
Agrandir
Diagramme fourni par Nat Budin sur #opensuse

Sommaire

Libzypp

libzypp est une bibliothèque de gestion de produits/paquetages/correctifs écrite en c++. Actuellement, elle installe, met à jour et désinstalle les paquetages à l'aide de la ligne de commande "rpm". libzypp contient aussi un algorithme de résolution des dépendances.

Libzypp ZMD helpers

Ce sont un ensemble de petits exécutifs en c++ dans /usr/lib/zmd (ou /usr/lib64/zmd pour les systèmes x86_64). Ils agissent comme intermédiaires entre ZMD et libzypp, ils utilisent la base de données ZMD SQLite pour communiquer avec ZMD. Ces assistants sont :

  • update-status
  • parse-metadata
  • transact

processus ZenWorks zmd

Ce démon est écrit en C#. Il écoute les commandes et (en supposant que l'usager ait les droits nécessaires) passe les commandes aux assistants pour qu'ils les exécutent.

ZMD est aussi utilisé dans Novell ZENworks Linux Management 7. Dans ce produit, il utilise libredcarpet au lieu de libzypp sur les plateformes où libzypp n'est pas supporté (comme SuSE 9 ou Red Hat Enterprise Linux).

rug

rug est la ligne de commande pour accéder zmd. Vous pouvez lister, ajouter ou supprimer les sources d'installations et faire de nombreuses autres opérations. Consultez "rug --help" pour plus d'informations sur les fonctionnalités disponibles

Zen Updater

zen-updater, zen-installer, et zen-remover sont de petites applets écrites avec Mono. Ces applets fournissent de petites interfaces graphiques pour zmd.

Gestionnaire de paquetage de Yast

Dans SUSE Linux 10.1, le gestionnaire de paquetage de YaST utilise libzypp mais sans ZMD. La bibliothèque libzypp est directement lié à YaST.


A voir aussi