Muffin 1/Utilisation de YUM : Les premiers pas

De Magazine fedora-fr
Aller à : navigation, rechercher
Par : ValentinGuerlesquin


Une distribution, c'est quoi ?

Votre système d'exploitation favori, vous le savez sans doutes, est diffusé par l'intermédiaire de ce que l'on nomme les Distributions Linux. Fedora en est une, mais nous devons entre autres retenir RedHat, Debian, Slackware, Mandriva... et de nombreuses autres encore. Une distribution est - globalement - le regroupement d'un ensemble de logiciels, gravitant autout du noyaux linux, installable sur une machine, pour lui permettre de fonctionner. Cette définition est sans aucun doutes imparfaite, mais elle a le mérite d'être relativement simple.

Les logiciels utilisés sont des logiciels dont les sources sont disponible librement, et qu'en théorie, il faut compiler soit même. Grossièrement, les pièces détachées de la voiture sont données, les plans également, mais c'est à vous de réaliser le montage. Une distribution se propose de vous simplifier le travail, en rendant accessible ces logiciels déjà compilés, et utilisables directement. Comme plusieurs logiciels inter-agissent entre eux, et que le bon fonctionnement de l'un dépends fortement du bon fonctionnement d'un autre, une uniformité est utilisée dans les distributions, notamment dans l'emplacement des fichiers de configuration, des éxecutables ...

On va mettre le paquet !

Les logiciels ainsi préparés sont distribués par les projets de distribution (dans notre cas, le projet Fedora) sous forme de paquet (ou paquetage, package en bon français de france...). Ils ont dans le monde Fedora un format et une extension nommée ".rpm". Ceci est historique : Fedora est issu du projet RedHat, distribution linux professionnelle : RPM signifie "Red Hat Package Manager".

Qu'est-ce qui différencie un RPM d'un bête - et c'est peu de le dire - d'un bête setup.exe ? Et bien, la notions de dépendance.

Pour les drogués...

La dépendance, c'est de ne pas pouvoir se passer de quelque chose. Les fichiers RPM incluent en leur sein des déclarations permettant de déterminer quels sont les programmes dont ils ont besoin pour fonctionner. Ils sont aussi capable de dire avec lesquels ils ne peuvent pas coexister ... Ainsi, si vous essayez d'installer deux driver différents pour votre carte vidéo, vous serez averti de cette incompatibilité de caractère et, à moins que vous ne soyez vraiment convaincant, vous serez forcé d'en supprimer un des deux.

Le comptable de la boite.

Un paquet s'installe et se supprime d'un système avec la commande "rpm". Cependant, cet outils, s'il est capable de vérifier qu'un paquet peut s'installer (dépendances, incompatibilité), il reste encore rudimentaire et n'automatise pas tout. Le programme Yum vous permet de réaliser de nombreuses tâches relatives à la gestion des logiciels présent sur votre distribution linux. Les voici résumés ici :

  • Rechercher un logiciel ;
  • Installer un ou plusieurs logiciels ;
  • Gérer les dépendances, et les exclusions mutuelles ;
  • Supprimer un ou plusieurs logiciels ;
  • Mettre à jour vos logiciels.


Ce dernier point est remarquable, et voici une comparaison dans le but de l'éclaircir : lorsque vous mettez à jour votre système utilisant les logiciels Microsoft par exemple, vous mettez à jour le système lui même (windows), et, parfois, d'atres logiciels du même éditeur (la suite office par exemple). Pour le reste, débrouillez vous. Il vous appartient de vous tenir informé des nouvelles versions de l'ensemble de vos programmes, et de les mettre à jour manuellement, en allant les récupérer sur les sites des éditeurs respectifs.

Ce n'est pas le cas dans un système basé sur linux, et en particulier avec Fedora. Lorsque vous mettez à jour votre système, l'ENSEMBLE des programmes présents sont mis à jour. D'un certain point de vue, la distribution (au sens "projet") est l'éditeur de l'ensemble des logiciels que vous utilisez.

Utilisation de Yum : quelques exemples

Yum est donc un logiciel qui vous permet d'installer un logiciel simplement. Il s'utilise en ligne de commande (c'est à dire, dans un terminal), et en étant super-utilisateur.

Nous allons tout d'abord installer un logiciel quelconque. Cet exemple vous permet d'installer linux_logo, un logiciel qui n'est propablement pas encore installé sur votre machine. C'est un tord, car il est presque absolument inutile. Pourquoi s'en priver ?

Dans un terminal, tapez donc :

$ su
Mot de passe : 

Vous êtes maintenant le super-utilisateur de votre machine. Faites attention à ce que vous faites ! Pour installer linux_logo, nous pouvons taper :

# yum install linux_logo

Comme vous pourrez le lire dans ce qui s'affichera, yum est parti chercher sur internet le ou les logiciels pouvant correspondre à linux_logo, en a trouvé un, vous récapitule cela dans un tableau, et vous demande si c'est bien ce que vous vouliez. Si vous répondez oui (avec "o"), alors yum installera le logiciel sur votre machine. Ce n'était pas bien compliqué...

Pour enlever un logiciel, vous pouvez utilisez la commande suivante :

# yum remove linux_logo

Et voir ce qu'il se passe. Cependant, je vous conseille de jouer avec linux_logo avant de l'enlever, ce serait dommage ...

Pour se rendre compte du mécanisme de dépendances, vous pouvez tester la commande suivante :

# yum install eclipse

Vous pourrez voir l'ensemble des logiciels dont eclipse a besoin, et qui seront donc installés automatiquement. C'est vachement pratique, tout de même, non ? Si vous ne souhaitez pas installer eclipse, il vous suffira de répondre "n" (non) lors du résumé de la transaction.

Pour rechercher un logiciel, si vous connaissez pas son nom exact, vous pouvez utiliser les fonctions de recherche de yum. Deux options s'offrent à vous :

La version "simple", avec la commande list.

# yum list linux\* 

vous permet de lister tout les paquets dont le nom commence par "linux". Vous devriez y retrouver le fameux paquet linux_logo. Si vous voulez chercher dans la description, le résumé, le nom de l'empaqueteur ..., vous pouvez utiliser la commande "search" :

# yum search linux

La liste de résultats est, je vous l'assure, conséquente.

Pour mettre à jour un logiciel, vous pouvez utiliser la fonction "update" de yum :

# yum update firefox

Pour pettre à jour l'ensemble de votre système :

# yum update

Dans ce cas précis, yum ira vérifier que les versions installées sur votre système sont bien les plus récentes disponible. Et si vous y ajouter l'option -y (pour "yes"), alors yum ne vous demandera meme pas votre avis et installera les derniere versions disponibles.

# yum -y update

L'effet est garantie lorsque vous exécutez cette commande sur un système récemment installé et disposant de nombreuses mises à jour. Par exemple, installez Fedora 9 sur une machine, à partir du DVD, puis lancez cette commande devant un ami : vous pourrez lui expliquer comment votre belle machine va trouver, toute seule, les dernieres versions des logiciels.

Fonctionnement de Yum : quelques explications

Vous avez pu le remarquer, l'usage de yum est relativement simple. Cette simplicité apparente cache en fait un ensemble de fonctionnalité destinées à vous simplifier la vie.

Yum est capable de résoudre les dépendances. A partir des informations contenues dans le paquetage, Yum construit un arbre de dépendances et vérifie que celle ci sont satisfaites. Si des éléments nécessaire au bon fonctionnement d'un logiciel sont manquants, alors ils sont proposés automatiquement pour l'installation.

Yum va chercher les informations sur les paquetages disponibles, et les paquetages eux mêmes, sur les différents dépôts de Fedora. Un dépôt est un réseau de serveurs mis à disposition de la communauté, et synchronisés entre eux.

Les paquets présents sur les dépôts sont signés numériquement. C'est une mesure de sécurité, permettant de contrôler la provenance des paquets téléchargés via Yum. Ainsi, lors de la première utilisation de Yum, ils vous sera demandé de confirmer l'utilisation des clés nécessaires à la vérification des paquets. Cela permet de s'assure qu'un des serveurs faisant parti du dépot ne cherche pas à diffuser des paquets corrompus (contenant des virus par exemple). Il est important de noter que cette vérification d'intégrité numérique est propre à la distribution Fedora. Certaines distributions populaires ne s'en préoccupe pas.

Conclusion

Yum est un outils puissant, et faisant partie intégrante de Fedora. Certes, il est en mode console, et pas en mode graphique, et peu donc en faire fuir quelques uns. Cependant, des interfaces graphiques basées sur Yum existent. S'il est parfois critiqué, notament pour sa prétendue lenteur, Yum reste un outils extrêmement puissant, capable de gérer des problèmes complexes. De plus, de nombreux outils complémentaires, présents sous la forme de plugins, permettent d'étendre les fonctionnalités de yum de façon significative.

Nous aurons l'occasion de parler des différents plugins de yum, et de leur usage, dans un prochain article. Nous aborderons également l'utilisation d'autres dépôts que ceux utilisés par défaut sur votre système, et nous verrons à quoi ceux ci peuvent servir.