<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://lea-linux.org/docs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=MatthieuS</id>
	<title>Lea Linux - Contributions [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://lea-linux.org/docs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=MatthieuS"/>
	<link rel="alternate" type="text/html" href="https://lea-linux.org/documentations/Sp%C3%A9cial:Contributions/MatthieuS"/>
	<updated>2026-04-26T05:52:13Z</updated>
	<subtitle>Contributions</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=Utilisateur:MatthieuS&amp;diff=42619</id>
		<title>Utilisateur:MatthieuS</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=Utilisateur:MatthieuS&amp;diff=42619"/>
		<updated>2020-03-23T04:56:12Z</updated>

		<summary type="html">&lt;p&gt;MatthieuS : /* Contact */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Matthieu, Fedora.&lt;br /&gt;
&lt;br /&gt;
Bienvenue sur ma page !&lt;br /&gt;
&lt;br /&gt;
=== Contact ===&lt;br /&gt;
Email: fantom at fedoraproject.org&lt;br /&gt;
&lt;br /&gt;
Clé GPG: [https://keys.openpgp.org/search?q=AE157E0B29F0BEF2 AE157E0B29F0BEF2]&lt;/div&gt;</summary>
		<author><name>MatthieuS</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=Utilisateur:MatthieuS&amp;diff=21394</id>
		<title>Utilisateur:MatthieuS</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=Utilisateur:MatthieuS&amp;diff=21394"/>
		<updated>2012-01-08T11:49:47Z</updated>

		<summary type="html">&lt;p&gt;MatthieuS : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Matthieu, Fedora.&lt;br /&gt;
&lt;br /&gt;
Bienvenue sur ma page !&lt;br /&gt;
&lt;br /&gt;
=== Contact ===&lt;br /&gt;
Par E-mail: casper.le.fantom AT gmail POINT com | prière d&#039;utiliser la clé PGP: 83288189&lt;/div&gt;</summary>
		<author><name>MatthieuS</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20938</id>
		<title>YUM</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20938"/>
		<updated>2011-11-15T00:06:03Z</updated>

		<summary type="html">&lt;p&gt;MatthieuS : /* Un interpréteur de commandes dans YUM */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Catégorie:Fedora]]&lt;br /&gt;
&lt;br /&gt;
= Quelques subtiles options de YUM =&lt;br /&gt;
&lt;br /&gt;
par [[Utilisateur:MatthieuS|Matthieu]]&lt;br /&gt;
&lt;br /&gt;
Quelques options de YUM, le gestionnaire de paquets de Fedora et Red Hat.&lt;br /&gt;
&lt;br /&gt;
== La clause info ==&lt;br /&gt;
&lt;br /&gt;
Cette clause permet de récupérer un descriptif du paquet qui lui est passé en paramètre, qu’il soit installé sur le système ou non ; elle affiche également d’autres compléments relatifs à ce paquet tels que sa version, son architecture, sa taille, le dépôt le proposant, ou encore sa licence :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum info arora &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Nom : arora &amp;lt;br /&amp;gt;&lt;br /&gt;
Architecture : x86_64 &amp;lt;br /&amp;gt;&lt;br /&gt;
Version : 0.11.0 &amp;lt;br /&amp;gt;&lt;br /&gt;
Révision : 2.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
Taille : 811 k &amp;lt;br /&amp;gt;&lt;br /&gt;
Dépôt : fedora &amp;lt;br /&amp;gt;&lt;br /&gt;
Résumé : A cross platform web browser &amp;lt;br /&amp;gt;&lt;br /&gt;
URL : http://code.google.com/p/arora/ &amp;lt;br /&amp;gt;&lt;br /&gt;
Licence : GPLv2+ &amp;lt;br /&amp;gt;&lt;br /&gt;
Description : Arora is a simple, cross &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; platform web browser based on &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; the QtWebKit engine. Currently, &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; Arora is still under &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; development, but it already has &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; support for browsing and other &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; common features such as web &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; history and bookmarks.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause repolist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause liste simplement tous les dépôts activés pour votre système &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist &amp;lt;br /&amp;gt;&lt;br /&gt;
id du dépôt nom du dépôt statut &amp;lt;br /&amp;gt;&lt;br /&gt;
fedora Fedora 15 - x86_64 24 085 &amp;lt;br /&amp;gt;&lt;br /&gt;
updates Fedora 15 - x86_64 - Updates 872 &amp;lt;br /&amp;gt;&lt;br /&gt;
repolist: 25 767 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On notera qu’en plus des dépôts activés, la commande affiche, dans la colonne « statut », le nombre de paquets composant chacun d’entre eux. Pour afficher tous les dépôts définis dans votre système, y compris ceux désactivés (les dépôts de test par exemple), on rajoutera le mot-clé all à la commande &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause provides ==&lt;br /&gt;
Si vous vous êtes déjà demandé quel paquet fournit un programme ou&lt;br /&gt;
une bibliothèque donnée, la clause provides devrait répondre à vos&lt;br /&gt;
attentes : celle-ci interroge en effet les dépôts pour déterminer le paquet&lt;br /&gt;
proposant la ressource qui lui est passée en paramètre. Une fois le&lt;br /&gt;
paquet identifié, ne reste plus qu’à l’installer. Notez que dans le cas où&lt;br /&gt;
l’on souhaite trouver un paquet à partir d’un fichier, cette clause attend&lt;br /&gt;
le chemin complet supposé de ce dernier (ou au moins une expression&lt;br /&gt;
rationnelle) &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides /bin/cp &amp;lt;br /&amp;gt;&lt;br /&gt;
$ yum provides \*/thunderbird&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notez cependant que pour les bibliothèques dynamiques en revanche (des fichiers *.so.*), le nom même du fichier suffit &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides ld-linux.so.2&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause check ==&lt;br /&gt;
Cette clause va vérifier l’intégrité de votre base de données RPM &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum check&lt;br /&gt;
&lt;br /&gt;
check all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tel est le message que cette commande doit retourner, après quelques minutes d’exécution, si aucune dépendance brisée ni paquets dupliqués n’ont été détectés. Dans le cas contraire, il est vital de corriger les problèmes signalés pour le bon fonctionnement de votre système. La commande package-cleanup devrait vous y aider d’ailleurs.&lt;br /&gt;
&lt;br /&gt;
== La clause deplist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause renvoie, pour un paquet passé en paramètre, la liste de ses&lt;br /&gt;
dépendances &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum deplist wget &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Recherche de dépendances : &amp;lt;br /&amp;gt;&lt;br /&gt;
paquet : wget.x86_64 1.12-3.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libssl.so.10()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: openssl.x86_64 1.0.0d-1.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : librt.so.1()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libc.so.6(GLIBC_2.8)(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libdl.so.2()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : /sbin/install-info &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: info.x86_64 4.13a-15.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libz.so.1()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: zlib.x86_64 1.2.5-3.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : rtld(GNU_HASH) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.i686 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libcrypto.so.10()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: openssl.x86_64 1.0.0d-1.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : librt.so.1(GLIBC_2.2.5)(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : /bin/sh &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: bash.x86_64 4.2.10-2.fc15&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Une commande à réserver à tous ceux qui s’intéressent à la façon dont YUM gère les dépendances d’un paquet...&lt;br /&gt;
&lt;br /&gt;
== La clause clean ==&lt;br /&gt;
&lt;br /&gt;
YUM conserve les différentes informations relatives aux dépôts, et en particulier les paquets les composants, dans des fichiers de cache durant&lt;br /&gt;
un certain temps (dans le dossier /var/cache/yum/ pour information). De cette façon, YUM n’a pas à interroger systématiquement les dépôts en ligne à chaque utilisation, ce qui rallongerait considérablement ses traitements. Contrairement au gestionnaire de paquetages APT, YUM est en mesure de mettre à jour son cache automatiquement, et ce aussi souvent que nécessaire.&lt;br /&gt;
&lt;br /&gt;
Il peut néanmoins s’avérer nécessaire de purger ce cache manuellement, pour forcer YUM à récupérer de nouvelles données dépôts à jour : quoique ce cas demeure exceptionnel, cette opération s’imposera si, par exemple, YUM devait renvoyer des erreurs indiquant des incohérences dans sa base de données &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum clean all&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ainsi, au prochain lancement de YUM, les informations dépôts seront de nouveau générées.&lt;br /&gt;
&lt;br /&gt;
== La clause makecache ==&lt;br /&gt;
&lt;br /&gt;
Cette clause est le pendant de la précédente dans la mesure où elle&lt;br /&gt;
permet de lancer manuellement une mise à jour des méta-données de&lt;br /&gt;
YUM relatives aux dépôts &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum makecache&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== L’option --exclude ==&lt;br /&gt;
&lt;br /&gt;
Si, pour diverses raisons, vous souhaitiez exclure un paquet particulier&lt;br /&gt;
d’une mise à jour, l’option --exclude est faite pour vous &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum update --exclude=kernel,kernel-devel&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande va ainsi empêcher les paquets kernel et kerneldevel d’être mis à jour. Cette opération est cependant loin d’être anodine, sachant que les mises à jour visent avant tout à corriger des bogues voire des problèmes de sécurité ; aussi ne l’utilisez que si vous savez ce que vous faites...&lt;br /&gt;
&lt;br /&gt;
== L’option --skip-broken ==&lt;br /&gt;
&lt;br /&gt;
Cette option est utile lorsque certains paquets que l’on souhaite installer ou mettre à jour présentent des dépendances non disponibles dans les dépôts. Un tel cas de figure—rare cependant—se produit par exemple lorsque le noyau est mis à jour, mais que des paquets kmod- &amp;lt;module&amp;gt; installés, construits pour une version spécifique du noyau, n’ont pas encore été mis à disposition dans les dépôts pour celui-ci. Dans pareille situation, YUM refusera de poursuivre la mise à jour ; les dépendances de ces paquets en erreur sont dites « brisées ». L’utilisation de cette option fera en sorte que YUM ne bloque pas une transaction à cause de ces derniers : ils ne seront tout simplement pas traités, contrairement aux autres paquets aux dépendances satisfaites &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum update --skip-broken&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette option est une alternative peut-être plus pratique à --exclude pour ce type de problèmes.&lt;br /&gt;
&lt;br /&gt;
== L’option --setopt ==&lt;br /&gt;
&lt;br /&gt;
Les options de YUM ne se limitent cependant pas aux deux précédentes susmentionnées : YUM comporte en effet une foultitude de réglages « cachés », documentés dans la page de manuel de yum.conf. Ces réglages sont passés à la commande yum au travers de l’option --&lt;br /&gt;
setopt=&amp;lt;option&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Parmi ces différents réglages, retenons les suivants.&lt;br /&gt;
* Le réglage throttle=&amp;lt;bande passante&amp;gt; permet de modifier à la volée&lt;br /&gt;
la bande passante rendue disponible au téléchargement des&lt;br /&gt;
paquets &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum install pidgin --setopt=throttle=3M&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande permet ainsi d’allouer temporairement à YUM une bande passante de 3 Mio par seconde.&lt;br /&gt;
&lt;br /&gt;
* YUM propose divers réglages également permettant de modifier la façon dont ses messages seront affichés, en y ajoutant notamment de la couleur &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum list *gstreamer* --setopt=color_list_available_install=green --setopt=color_list_installed_reinstall=blue&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande va ainsi lister les paquets contenant la chaîne « gstreamer » dans leur nom, en affichant ceux déjà installés sur le système en bleu et ceux disponibles en ligne en vert.&lt;br /&gt;
&lt;br /&gt;
* Un dernier réglage, introduit dans la dernière version de YUM (livrée avec Fedora 15), est particulièrement notable puisqu’il permet, à la désinstallation d’un paquet, de supprimer également toutes ses dépendances non requises par d’autres paquets en même temps :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum remove empathy --setopt=clean_requirements_on_remove=1&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande désinstallera ainsi non seulement Empathy, mais aussi par exemple toutes les bibliothèques requises par ce dernier et non utiles à d’autres programmes. Un tel réglage permet ainsi de maintenir sa base de données de paquets sans le moindre effort, en ne conservant que les paquets réellement utiles au fonctionnement du système et des applications le composant.&lt;br /&gt;
&lt;br /&gt;
== Retour vers le passé ==&lt;br /&gt;
&lt;br /&gt;
Nous nous intéresserons ici plus particulièrement à une clause relativement&lt;br /&gt;
peu connue de YUM, mais ô combien utile : la clause history. Celle-ci vous permettra non seulement de suivre l’historique de vos opérations YUM, mais aussi d’annuler certaines d’entre elles le plus simplement du monde. Pour mieux cerner son fonctionnement, nous allons présenter dans la suite un exemple d’utilisation.&lt;br /&gt;
&lt;br /&gt;
Supposons que nous souhaitons installer, par exemple afin de compiler un programme à partir de ses sources, le paquet qt-devel &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum install qt-devel&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus de ce paquet seront également installés une foultitude de paquets de développement. Une fois votre programme compilé, vous n’avez a priori plus besoin de tous ces paquets et souhaitez donc en toute logique les désinstaller. Or vous avez lancé depuis quantité de mises à jour et installé également d’autres paquets. Comment donc retrouver d’une part les paquets installés avec qt-devel et les supprimer sans devoir les retrouver un par un ? C’est là que la clause history nous sera d’un grand secours. On pourra ainsi lister les différentes opérations YUM exécutées sur le système avec la commande suivante &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum history list&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Id | Identifiant utilisateur | Date et heure | Action | Modifié &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;--------------------------------------------------------------------&amp;lt;/nowiki&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
159 | Casper &amp;lt;Casper&amp;gt; | 2011-05-09 23:49 | Install | 11 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nous identifions alors, à l’aide de l’horodatage, notre installation du paquet&lt;br /&gt;
qt-devel et de ses dépendances. Nous pouvons alors demander l’annulation—ici la désinstallation—de cette transaction ainsi &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum history undo 159&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le numéro 159 correspond à l’identifiant unique de notre transaction YUM listée dans les sorties de la commande yum history list. En plus de vous aider à maintenir un système propre et léger, cette clause s’avérera extrêment utile pour annuler par exemple une mise à jour présentant des instabilités : on reviendra ainsi sans effort à l’état précédent du système pour mieux analyser le problème.&lt;br /&gt;
&lt;br /&gt;
== Un interpréteur de commandes dans YUM ==&lt;br /&gt;
&lt;br /&gt;
YUM est doté d’un interpréteur de commandes au travers de la clause shell. Ce shell interactif vous permettra de combiner plusieurs opérations YUM en une seule commande, par exemple une mise à jour et l’installation d’un nouveau paquet &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Configuration du shell Yum &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; update &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; install gnome-tweak-tool &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; run &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ainsi qu’on peut le constater dans cette dernière commande, une fois les différentes opérations YUM saisies, ces dernières seront exécutées avec la commande run. L’interpréteur se dote par ailleurs d’une aide, accessible avec la commande help :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Configuration du shell Yum &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;gt; help &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce shell s’avère extrêmement puissant puisqu’il autorise également l’exécution&lt;br /&gt;
de véritables scripts YUM : on peut ainsi aisément imaginer un script que vous pourriez lancer suite à l’installation d’une nouvelle version de Fedora et qui installerait vos programmes favoris et lancerait une mise à jour en une seule passe : considérons par exemple à cette fin le script suivant, supposé écrit dans un fichier &amp;lt;code&amp;gt;post-install.yum&amp;lt;/code&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
update&lt;br /&gt;
&lt;br /&gt;
install gparted pavucontrol bash-completion \ &lt;br /&gt;
dconf-editor&lt;br /&gt;
run&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour l’exécuter, il suffit simplement de passer à la commande yum&lt;br /&gt;
shell le chemin du fichier :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell post-install.yum&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notez cependant que vous serez invités, comme pour n’importe quelle transaction YUM par défaut, à confirmer chaque opération à chaque fois qu’il vous le sera demandé. Avec un tel script, que vous pourrez maintenir et ainsi enrichir, vous retrouverez aisément votre environnement logiciel à chaque nouvelle version de Fedora.&lt;br /&gt;
&lt;br /&gt;
== A propos de cette doc ==&lt;br /&gt;
&lt;br /&gt;
Cette documentation a été initialement publiée par Matthieu Saulnier dans l&#039;excellent magazine de la communauté francophone de Fedora : [http://mag.fedora-fr.org/wiki/Accueil#T.C3.A9l.C3.A9chargements_disponibles_.21 MUFFIN n°3].&lt;br /&gt;
&lt;br /&gt;
== Liens ==&lt;br /&gt;
&lt;br /&gt;
Voir aussi :&lt;br /&gt;
&lt;br /&gt;
* La fiche [[Fiches:Administration-ficheinstall-Fedora|Comment installer un programme sous Fedora ?]]&lt;br /&gt;
* [[software-soft_gere-rpm|RPM, URPMI et apt-get]]&lt;br /&gt;
* [http://doc.fedora-fr.org/wiki/YUM_:_Configuration_du_gestionnaire_de_paquets YUM : Configuration du gestionnaire de paquets] sur Fedora-FR.&lt;br /&gt;
&lt;br /&gt;
{{Copy|2011|[[Utilisateur:MatthieuS|Matthieu Saulnier]]|CC-BY-SA}}&lt;/div&gt;</summary>
		<author><name>MatthieuS</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20937</id>
		<title>YUM</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20937"/>
		<updated>2011-11-15T00:04:50Z</updated>

		<summary type="html">&lt;p&gt;MatthieuS : /* La clause check */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Catégorie:Fedora]]&lt;br /&gt;
&lt;br /&gt;
= Quelques subtiles options de YUM =&lt;br /&gt;
&lt;br /&gt;
par [[Utilisateur:MatthieuS|Matthieu]]&lt;br /&gt;
&lt;br /&gt;
Quelques options de YUM, le gestionnaire de paquets de Fedora et Red Hat.&lt;br /&gt;
&lt;br /&gt;
== La clause info ==&lt;br /&gt;
&lt;br /&gt;
Cette clause permet de récupérer un descriptif du paquet qui lui est passé en paramètre, qu’il soit installé sur le système ou non ; elle affiche également d’autres compléments relatifs à ce paquet tels que sa version, son architecture, sa taille, le dépôt le proposant, ou encore sa licence :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum info arora &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Nom : arora &amp;lt;br /&amp;gt;&lt;br /&gt;
Architecture : x86_64 &amp;lt;br /&amp;gt;&lt;br /&gt;
Version : 0.11.0 &amp;lt;br /&amp;gt;&lt;br /&gt;
Révision : 2.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
Taille : 811 k &amp;lt;br /&amp;gt;&lt;br /&gt;
Dépôt : fedora &amp;lt;br /&amp;gt;&lt;br /&gt;
Résumé : A cross platform web browser &amp;lt;br /&amp;gt;&lt;br /&gt;
URL : http://code.google.com/p/arora/ &amp;lt;br /&amp;gt;&lt;br /&gt;
Licence : GPLv2+ &amp;lt;br /&amp;gt;&lt;br /&gt;
Description : Arora is a simple, cross &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; platform web browser based on &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; the QtWebKit engine. Currently, &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; Arora is still under &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; development, but it already has &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; support for browsing and other &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; common features such as web &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; history and bookmarks.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause repolist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause liste simplement tous les dépôts activés pour votre système &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist &amp;lt;br /&amp;gt;&lt;br /&gt;
id du dépôt nom du dépôt statut &amp;lt;br /&amp;gt;&lt;br /&gt;
fedora Fedora 15 - x86_64 24 085 &amp;lt;br /&amp;gt;&lt;br /&gt;
updates Fedora 15 - x86_64 - Updates 872 &amp;lt;br /&amp;gt;&lt;br /&gt;
repolist: 25 767 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On notera qu’en plus des dépôts activés, la commande affiche, dans la colonne « statut », le nombre de paquets composant chacun d’entre eux. Pour afficher tous les dépôts définis dans votre système, y compris ceux désactivés (les dépôts de test par exemple), on rajoutera le mot-clé all à la commande &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause provides ==&lt;br /&gt;
Si vous vous êtes déjà demandé quel paquet fournit un programme ou&lt;br /&gt;
une bibliothèque donnée, la clause provides devrait répondre à vos&lt;br /&gt;
attentes : celle-ci interroge en effet les dépôts pour déterminer le paquet&lt;br /&gt;
proposant la ressource qui lui est passée en paramètre. Une fois le&lt;br /&gt;
paquet identifié, ne reste plus qu’à l’installer. Notez que dans le cas où&lt;br /&gt;
l’on souhaite trouver un paquet à partir d’un fichier, cette clause attend&lt;br /&gt;
le chemin complet supposé de ce dernier (ou au moins une expression&lt;br /&gt;
rationnelle) &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides /bin/cp &amp;lt;br /&amp;gt;&lt;br /&gt;
$ yum provides \*/thunderbird&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notez cependant que pour les bibliothèques dynamiques en revanche (des fichiers *.so.*), le nom même du fichier suffit &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides ld-linux.so.2&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause check ==&lt;br /&gt;
Cette clause va vérifier l’intégrité de votre base de données RPM &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum check&lt;br /&gt;
&lt;br /&gt;
check all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tel est le message que cette commande doit retourner, après quelques minutes d’exécution, si aucune dépendance brisée ni paquets dupliqués n’ont été détectés. Dans le cas contraire, il est vital de corriger les problèmes signalés pour le bon fonctionnement de votre système. La commande package-cleanup devrait vous y aider d’ailleurs.&lt;br /&gt;
&lt;br /&gt;
== La clause deplist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause renvoie, pour un paquet passé en paramètre, la liste de ses&lt;br /&gt;
dépendances &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum deplist wget &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Recherche de dépendances : &amp;lt;br /&amp;gt;&lt;br /&gt;
paquet : wget.x86_64 1.12-3.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libssl.so.10()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: openssl.x86_64 1.0.0d-1.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : librt.so.1()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libc.so.6(GLIBC_2.8)(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libdl.so.2()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : /sbin/install-info &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: info.x86_64 4.13a-15.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libz.so.1()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: zlib.x86_64 1.2.5-3.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : rtld(GNU_HASH) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.i686 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libcrypto.so.10()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: openssl.x86_64 1.0.0d-1.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : librt.so.1(GLIBC_2.2.5)(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : /bin/sh &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: bash.x86_64 4.2.10-2.fc15&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Une commande à réserver à tous ceux qui s’intéressent à la façon dont YUM gère les dépendances d’un paquet...&lt;br /&gt;
&lt;br /&gt;
== La clause clean ==&lt;br /&gt;
&lt;br /&gt;
YUM conserve les différentes informations relatives aux dépôts, et en particulier les paquets les composants, dans des fichiers de cache durant&lt;br /&gt;
un certain temps (dans le dossier /var/cache/yum/ pour information). De cette façon, YUM n’a pas à interroger systématiquement les dépôts en ligne à chaque utilisation, ce qui rallongerait considérablement ses traitements. Contrairement au gestionnaire de paquetages APT, YUM est en mesure de mettre à jour son cache automatiquement, et ce aussi souvent que nécessaire.&lt;br /&gt;
&lt;br /&gt;
Il peut néanmoins s’avérer nécessaire de purger ce cache manuellement, pour forcer YUM à récupérer de nouvelles données dépôts à jour : quoique ce cas demeure exceptionnel, cette opération s’imposera si, par exemple, YUM devait renvoyer des erreurs indiquant des incohérences dans sa base de données &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum clean all&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ainsi, au prochain lancement de YUM, les informations dépôts seront de nouveau générées.&lt;br /&gt;
&lt;br /&gt;
== La clause makecache ==&lt;br /&gt;
&lt;br /&gt;
Cette clause est le pendant de la précédente dans la mesure où elle&lt;br /&gt;
permet de lancer manuellement une mise à jour des méta-données de&lt;br /&gt;
YUM relatives aux dépôts &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum makecache&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== L’option --exclude ==&lt;br /&gt;
&lt;br /&gt;
Si, pour diverses raisons, vous souhaitiez exclure un paquet particulier&lt;br /&gt;
d’une mise à jour, l’option --exclude est faite pour vous &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum update --exclude=kernel,kernel-devel&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande va ainsi empêcher les paquets kernel et kerneldevel d’être mis à jour. Cette opération est cependant loin d’être anodine, sachant que les mises à jour visent avant tout à corriger des bogues voire des problèmes de sécurité ; aussi ne l’utilisez que si vous savez ce que vous faites...&lt;br /&gt;
&lt;br /&gt;
== L’option --skip-broken ==&lt;br /&gt;
&lt;br /&gt;
Cette option est utile lorsque certains paquets que l’on souhaite installer ou mettre à jour présentent des dépendances non disponibles dans les dépôts. Un tel cas de figure—rare cependant—se produit par exemple lorsque le noyau est mis à jour, mais que des paquets kmod- &amp;lt;module&amp;gt; installés, construits pour une version spécifique du noyau, n’ont pas encore été mis à disposition dans les dépôts pour celui-ci. Dans pareille situation, YUM refusera de poursuivre la mise à jour ; les dépendances de ces paquets en erreur sont dites « brisées ». L’utilisation de cette option fera en sorte que YUM ne bloque pas une transaction à cause de ces derniers : ils ne seront tout simplement pas traités, contrairement aux autres paquets aux dépendances satisfaites &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum update --skip-broken&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette option est une alternative peut-être plus pratique à --exclude pour ce type de problèmes.&lt;br /&gt;
&lt;br /&gt;
== L’option --setopt ==&lt;br /&gt;
&lt;br /&gt;
Les options de YUM ne se limitent cependant pas aux deux précédentes susmentionnées : YUM comporte en effet une foultitude de réglages « cachés », documentés dans la page de manuel de yum.conf. Ces réglages sont passés à la commande yum au travers de l’option --&lt;br /&gt;
setopt=&amp;lt;option&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Parmi ces différents réglages, retenons les suivants.&lt;br /&gt;
* Le réglage throttle=&amp;lt;bande passante&amp;gt; permet de modifier à la volée&lt;br /&gt;
la bande passante rendue disponible au téléchargement des&lt;br /&gt;
paquets &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum install pidgin --setopt=throttle=3M&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande permet ainsi d’allouer temporairement à YUM une bande passante de 3 Mio par seconde.&lt;br /&gt;
&lt;br /&gt;
* YUM propose divers réglages également permettant de modifier la façon dont ses messages seront affichés, en y ajoutant notamment de la couleur &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum list *gstreamer* --setopt=color_list_available_install=green --setopt=color_list_installed_reinstall=blue&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande va ainsi lister les paquets contenant la chaîne « gstreamer » dans leur nom, en affichant ceux déjà installés sur le système en bleu et ceux disponibles en ligne en vert.&lt;br /&gt;
&lt;br /&gt;
* Un dernier réglage, introduit dans la dernière version de YUM (livrée avec Fedora 15), est particulièrement notable puisqu’il permet, à la désinstallation d’un paquet, de supprimer également toutes ses dépendances non requises par d’autres paquets en même temps :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum remove empathy --setopt=clean_requirements_on_remove=1&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande désinstallera ainsi non seulement Empathy, mais aussi par exemple toutes les bibliothèques requises par ce dernier et non utiles à d’autres programmes. Un tel réglage permet ainsi de maintenir sa base de données de paquets sans le moindre effort, en ne conservant que les paquets réellement utiles au fonctionnement du système et des applications le composant.&lt;br /&gt;
&lt;br /&gt;
== Retour vers le passé ==&lt;br /&gt;
&lt;br /&gt;
Nous nous intéresserons ici plus particulièrement à une clause relativement&lt;br /&gt;
peu connue de YUM, mais ô combien utile : la clause history. Celle-ci vous permettra non seulement de suivre l’historique de vos opérations YUM, mais aussi d’annuler certaines d’entre elles le plus simplement du monde. Pour mieux cerner son fonctionnement, nous allons présenter dans la suite un exemple d’utilisation.&lt;br /&gt;
&lt;br /&gt;
Supposons que nous souhaitons installer, par exemple afin de compiler un programme à partir de ses sources, le paquet qt-devel &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum install qt-devel&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus de ce paquet seront également installés une foultitude de paquets de développement. Une fois votre programme compilé, vous n’avez a priori plus besoin de tous ces paquets et souhaitez donc en toute logique les désinstaller. Or vous avez lancé depuis quantité de mises à jour et installé également d’autres paquets. Comment donc retrouver d’une part les paquets installés avec qt-devel et les supprimer sans devoir les retrouver un par un ? C’est là que la clause history nous sera d’un grand secours. On pourra ainsi lister les différentes opérations YUM exécutées sur le système avec la commande suivante &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum history list&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Id | Identifiant utilisateur | Date et heure | Action | Modifié &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;--------------------------------------------------------------------&amp;lt;/nowiki&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
159 | Casper &amp;lt;Casper&amp;gt; | 2011-05-09 23:49 | Install | 11 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nous identifions alors, à l’aide de l’horodatage, notre installation du paquet&lt;br /&gt;
qt-devel et de ses dépendances. Nous pouvons alors demander l’annulation—ici la désinstallation—de cette transaction ainsi &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum history undo 159&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le numéro 159 correspond à l’identifiant unique de notre transaction YUM listée dans les sorties de la commande yum history list. En plus de vous aider à maintenir un système propre et léger, cette clause s’avérera extrêment utile pour annuler par exemple une mise à jour présentant des instabilités : on reviendra ainsi sans effort à l’état précédent du système pour mieux analyser le problème.&lt;br /&gt;
&lt;br /&gt;
== Un interpréteur de commandes dans YUM ==&lt;br /&gt;
&lt;br /&gt;
YUM est doté d’un interpréteur de commandes au travers de la clause shell. Ce shell interactif vous permettra de combiner plusieurs opérations YUM en une seule commande, par exemple une mise à jour et l’installation d’un nouveau paquet &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Configuration du shell Yum &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; update &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; install gnome-tweak-tool &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; run &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ainsi qu’on peut le constater dans cette dernière commande, une fois les différentes opérations YUM saisies, ces dernières seront exécutées avec la commande run. L’interpréteur se dote par ailleurs d’une aide, accessible avec la commande help :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Configuration du shell Yum &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;gt; help &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce shell s’avère extrêmement puissant puisqu’il autorise également l’exécution&lt;br /&gt;
de véritables scripts YUM : on peut ainsi aisément imaginer un script que vous pourriez lancer suite à l’installation d’une nouvelle version de Fedora et qui installerait vos programmes favoris et lancerait une mise à jour en une seule passe : considérons par exemple à cette fin le script suivant, supposé écrit dans un fichier &amp;lt;code&amp;gt;post-install.yum&amp;lt;/code&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
update&lt;br /&gt;
install gparted pavucontrol bash-completion \ &lt;br /&gt;
dconf-editor&lt;br /&gt;
run&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour l’exécuter, il suffit simplement de passer à la commande yum&lt;br /&gt;
shell le chemin du fichier :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell post-install.yum&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notez cependant que vous serez invités, comme pour n’importe quelle transaction YUM par défaut, à confirmer chaque opération à chaque fois qu’il vous le sera demandé. Avec un tel script, que vous pourrez maintenir et ainsi enrichir, vous retrouverez aisément votre environnement logiciel à chaque nouvelle version de Fedora.&lt;br /&gt;
&lt;br /&gt;
== A propos de cette doc ==&lt;br /&gt;
&lt;br /&gt;
Cette documentation a été initialement publiée par Matthieu Saulnier dans l&#039;excellent magazine de la communauté francophone de Fedora : [http://mag.fedora-fr.org/wiki/Accueil#T.C3.A9l.C3.A9chargements_disponibles_.21 MUFFIN n°3].&lt;br /&gt;
&lt;br /&gt;
== Liens ==&lt;br /&gt;
&lt;br /&gt;
Voir aussi :&lt;br /&gt;
&lt;br /&gt;
* La fiche [[Fiches:Administration-ficheinstall-Fedora|Comment installer un programme sous Fedora ?]]&lt;br /&gt;
* [[software-soft_gere-rpm|RPM, URPMI et apt-get]]&lt;br /&gt;
* [http://doc.fedora-fr.org/wiki/YUM_:_Configuration_du_gestionnaire_de_paquets YUM : Configuration du gestionnaire de paquets] sur Fedora-FR.&lt;br /&gt;
&lt;br /&gt;
{{Copy|2011|[[Utilisateur:MatthieuS|Matthieu Saulnier]]|CC-BY-SA}}&lt;/div&gt;</summary>
		<author><name>MatthieuS</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20915</id>
		<title>YUM</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20915"/>
		<updated>2011-11-14T14:12:06Z</updated>

		<summary type="html">&lt;p&gt;MatthieuS : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Catégorie:Fedora]]&lt;br /&gt;
&lt;br /&gt;
= Quelques subtiles options de YUM =&lt;br /&gt;
&lt;br /&gt;
par [[Utilisateur:MatthieuS|Matthieu]]&lt;br /&gt;
&lt;br /&gt;
== La clause info ==&lt;br /&gt;
&lt;br /&gt;
Cette clause permet de récupérer un descriptif du paquet qui lui est passé en paramètre, qu’il soit installé sur le système ou non ; elle affiche également d’autres compléments relatifs à ce paquet tels que sa version, son architecture, sa taille, le dépôt le proposant, ou encore sa licence :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum info arora &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Nom : arora &amp;lt;br /&amp;gt;&lt;br /&gt;
Architecture : x86_64 &amp;lt;br /&amp;gt;&lt;br /&gt;
Version : 0.11.0 &amp;lt;br /&amp;gt;&lt;br /&gt;
Révision : 2.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
Taille : 811 k &amp;lt;br /&amp;gt;&lt;br /&gt;
Dépôt : fedora &amp;lt;br /&amp;gt;&lt;br /&gt;
Résumé : A cross platform web browser &amp;lt;br /&amp;gt;&lt;br /&gt;
URL : http://code.google.com/p/arora/ &amp;lt;br /&amp;gt;&lt;br /&gt;
Licence : GPLv2+ &amp;lt;br /&amp;gt;&lt;br /&gt;
Description : Arora is a simple, cross &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; platform web browser based on &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; the QtWebKit engine. Currently, &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; Arora is still under &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; development, but it already has &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; support for browsing and other &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; common features such as web &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; history and bookmarks.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause repolist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause liste simplement tous les dépôts activés pour votre système &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist &amp;lt;br /&amp;gt;&lt;br /&gt;
id du dépôt nom du dépôt statut &amp;lt;br /&amp;gt;&lt;br /&gt;
fedora Fedora 15 - x86_64 24 085 &amp;lt;br /&amp;gt;&lt;br /&gt;
updates Fedora 15 - x86_64 - Updates 872 &amp;lt;br /&amp;gt;&lt;br /&gt;
repolist: 25 767 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On notera qu’en plus des dépôts activés, la commande affiche, dans la colonne « statut », le nombre de paquets composant chacun d’entre eux. Pour afficher tous les dépôts définis dans votre système, y compris ceux désactivés (les dépôts de test par exemple), on rajoutera le mot-clé all à la commande &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause provides ==&lt;br /&gt;
Si vous vous êtes déjà demandé quel paquet fournit un programme ou&lt;br /&gt;
une bibliothèque donnée, la clause provides devrait répondre à vos&lt;br /&gt;
attentes : celle-ci interroge en effet les dépôts pour déterminer le paquet&lt;br /&gt;
proposant la ressource qui lui est passée en paramètre. Une fois le&lt;br /&gt;
paquet identifié, ne reste plus qu’à l’installer. Notez que dans le cas où&lt;br /&gt;
l’on souhaite trouver un paquet à partir d’un fichier, cette clause attend&lt;br /&gt;
le chemin complet supposé de ce dernier (ou au moins une expression&lt;br /&gt;
rationnelle) &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides /bin/cp &amp;lt;br /&amp;gt;&lt;br /&gt;
$ yum provides \*/thunderbird&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notez cependant que pour les bibliothèques dynamiques en revanche (des fichiers *.so.*), le nom même du fichier suffit &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides ld-linux.so.2&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause check ==&lt;br /&gt;
Cette clause va vérifier l’intégrité de votre base de données RPM &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum check&lt;br /&gt;
check all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tel est le message que cette commande doit retourner, après quelques minutes d’exécution, si aucune dépendance brisée ni paquets dupliqués n’ont été détectés. Dans le cas contraire, il est vital de corriger les problèmes signalés pour le bon fonctionnement de votre système. La commande package-cleanup devrait vous y aider d’ailleurs.&lt;br /&gt;
&lt;br /&gt;
== La clause deplist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause renvoie, pour un paquet passé en paramètre, la liste de ses&lt;br /&gt;
dépendances &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum deplist wget &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Recherche de dépendances : &amp;lt;br /&amp;gt;&lt;br /&gt;
paquet : wget.x86_64 1.12-3.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libssl.so.10()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: openssl.x86_64 1.0.0d-1.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : librt.so.1()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libc.so.6(GLIBC_2.8)(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libdl.so.2()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : /sbin/install-info &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: info.x86_64 4.13a-15.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libz.so.1()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: zlib.x86_64 1.2.5-3.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : rtld(GNU_HASH) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.i686 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libcrypto.so.10()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: openssl.x86_64 1.0.0d-1.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : librt.so.1(GLIBC_2.2.5)(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : /bin/sh &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: bash.x86_64 4.2.10-2.fc15&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Une commande à réserver à tous ceux qui s’intéressent à la façon dont YUM gère les dépendances d’un paquet...&lt;br /&gt;
&lt;br /&gt;
== La clause clean ==&lt;br /&gt;
&lt;br /&gt;
YUM conserve les différentes informations relatives aux dépôts, et en particulier les paquets les composants, dans des fichiers de cache durant&lt;br /&gt;
un certain temps (dans le dossier /var/cache/yum/ pour information). De cette façon, YUM n’a pas à interroger systématiquement les dépôts en ligne à chaque utilisation, ce qui rallongerait considérablement ses traitements. Contrairement au gestionnaire de paquetages APT, YUM est en mesure de mettre à jour son cache automatiquement, et ce aussi souvent que nécessaire.&lt;br /&gt;
&lt;br /&gt;
Il peut néanmoins s’avérer nécessaire de purger ce cache manuellement, pour forcer YUM à récupérer de nouvelles données dépôts à jour : quoique ce cas demeure exceptionnel, cette opération s’imposera si, par exemple, YUM devait renvoyer des erreurs indiquant des incohérences dans sa base de données &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum clean all&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ainsi, au prochain lancement de YUM, les informations dépôts seront de nouveau générées.&lt;br /&gt;
&lt;br /&gt;
== La clause makecache ==&lt;br /&gt;
&lt;br /&gt;
Cette clause est le pendant de la précédente dans la mesure où elle&lt;br /&gt;
permet de lancer manuellement une mise à jour des méta-données de&lt;br /&gt;
YUM relatives aux dépôts &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum makecache&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== L’option --exclude ==&lt;br /&gt;
&lt;br /&gt;
Si, pour diverses raisons, vous souhaitiez exclure un paquet particulier&lt;br /&gt;
d’une mise à jour, l’option --exclude est faite pour vous &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum update --exclude=kernel,kernel-devel&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande va ainsi empêcher les paquets kernel et kerneldevel d’être mis à jour. Cette opération est cependant loin d’être anodine, sachant que les mises à jour visent avant tout à corriger des bogues voire des problèmes de sécurité ; aussi ne l’utilisez que si vous savez ce que vous faites...&lt;br /&gt;
&lt;br /&gt;
== L’option --skip-broken ==&lt;br /&gt;
&lt;br /&gt;
Cette option est utile lorsque certains paquets que l’on souhaite installer ou mettre à jour présentent des dépendances non disponibles dans les dépôts. Un tel cas de figure—rare cependant—se produit par exemple lorsque le noyau est mis à jour, mais que des paquets kmod- &amp;lt;module&amp;gt; installés, construits pour une version spécifique du noyau, n’ont pas encore été mis à disposition dans les dépôts pour celui-ci. Dans pareille situation, YUM refusera de poursuivre la mise à jour ; les dépendances de ces paquets en erreur sont dites « brisées ». L’utilisation de cette option fera en sorte que YUM ne bloque pas une transaction à cause de ces derniers : ils ne seront tout simplement pas traités, contrairement aux autres paquets aux dépendances satisfaites &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum update --skip-broken&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette option est une alternative peut-être plus pratique à --exclude pour ce type de problèmes.&lt;br /&gt;
&lt;br /&gt;
== L’option --setopt ==&lt;br /&gt;
&lt;br /&gt;
Les options de YUM ne se limitent cependant pas aux deux précédentes susmentionnées : YUM comporte en effet une foultitude de réglages « cachés », documentés dans la page de manuel de yum.conf. Ces réglages sont passés à la commande yum au travers de l’option --&lt;br /&gt;
setopt=&amp;lt;option&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Parmi ces différents réglages, retenons les suivants.&lt;br /&gt;
* Le réglage throttle=&amp;lt;bande passante&amp;gt; permet de modifier à la volée&lt;br /&gt;
la bande passante rendue disponible au téléchargement des&lt;br /&gt;
paquets &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum install pidgin --setopt=throttle=3M&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande permet ainsi d’allouer temporairement à YUM une bande passante de 3 Mio par seconde.&lt;br /&gt;
&lt;br /&gt;
* YUM propose divers réglages également permettant de modifier la façon dont ses messages seront affichés, en y ajoutant notamment de la couleur &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum list *gstreamer* --setopt=color_list_available_install=green --setopt=color_list_installed_reinstall=blue&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande va ainsi lister les paquets contenant la chaîne « gstreamer » dans leur nom, en affichant ceux déjà installés sur le système en bleu et ceux disponibles en ligne en vert.&lt;br /&gt;
&lt;br /&gt;
* Un dernier réglage, introduit dans la dernière version de YUM (livrée avec Fedora 15), est particulièrement notable puisqu’il permet, à la désinstallation d’un paquet, de supprimer également toutes ses dépendances non requises par d’autres paquets en même temps :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum remove empathy --setopt=clean_requirements_on_remove=1&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande désinstallera ainsi non seulement Empathy, mais aussi par exemple toutes les bibliothèques requises par ce dernier et non utiles à d’autres programmes. Un tel réglage permet ainsi de maintenir sa base de données de paquets sans le moindre effort, en ne conservant que les paquets réellement utiles au fonctionnement du système et des applications le composant.&lt;br /&gt;
&lt;br /&gt;
== Retour vers le passé ==&lt;br /&gt;
&lt;br /&gt;
Nous nous intéresserons ici plus particulièrement à une clause relativement&lt;br /&gt;
peu connue de YUM, mais ô combien utile : la clause history. Celle-ci vous permettra non seulement de suivre l’historique de vos opérations YUM, mais aussi d’annuler certaines d’entre elles le plus simplement du monde. Pour mieux cerner son fonctionnement, nous allons présenter dans la suite un exemple d’utilisation.&lt;br /&gt;
&lt;br /&gt;
Supposons que nous souhaitons installer, par exemple afin de compiler un programme à partir de ses sources, le paquet qt-devel &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum install qt-devel&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus de ce paquet seront également installés une foultitude de paquets de développement. Une fois votre programme compilé, vous n’avez a priori plus besoin de tous ces paquets et souhaitez donc en toute logique les désinstaller. Or vous avez lancé depuis quantité de mises à jour et installé également d’autres paquets. Comment donc retrouver d’une part les paquets installés avec qt-devel et les supprimer sans devoir les retrouver un par un ? C’est là que la clause history nous sera d’un grand secours. On pourra ainsi lister les différentes opérations YUM exécutées sur le système avec la commande suivante &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum history list&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Id | Identifiant utilisateur | Date et heure | Action | Modifié &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;--------------------------------------------------------------------&amp;lt;/nowiki&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
159 | Casper &amp;lt;Casper&amp;gt; | 2011-05-09 23:49 | Install | 11 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nous identifions alors, à l’aide de l’horodatage, notre installation du paquet&lt;br /&gt;
qt-devel et de ses dépendances. Nous pouvons alors demander l’annulation—ici la désinstallation—de cette transaction ainsi &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum history undo 159&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le numéro 159 correspond à l’identifiant unique de notre transaction YUM listée dans les sorties de la commande yum history list. En plus de vous aider à maintenir un système propre et léger, cette clause s’avérera extrêment utile pour annuler par exemple une mise à jour présentant des instabilités : on reviendra ainsi sans effort à l’état précédent du système pour mieux analyser le problème.&lt;br /&gt;
&lt;br /&gt;
== Un interpréteur de commandes dans YUM ==&lt;br /&gt;
&lt;br /&gt;
YUM est doté d’un interpréteur de commandes au travers de la clause shell. Ce shell interactif vous permettra de combiner plusieurs opérations YUM en une seule commande, par exemple une mise à jour et l’installation d’un nouveau paquet &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Configuration du shell Yum &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; update &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; install gnome-tweak-tool &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;gt;&amp;lt;/nowiki&amp;gt; run &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ainsi qu’on peut le constater dans cette dernière commande, une fois les différentes opérations YUM saisies, ces dernières seront exécutées avec la commande run. L’interpréteur se dote par ailleurs d’une aide, accessible avec la commande help :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Configuration du shell Yum &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;gt; help &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce shell s’avère extrêmement puissant puisqu’il autorise également l’exécution&lt;br /&gt;
de véritables scripts YUM : on peut ainsi aisément imaginer un script que vous pourriez lancer suite à l’installation d’une nouvelle version de Fedora et qui installerait vos programmes favoris et lancerait une mise à jour en une seule passe : considérons par exemple à cette fin le script suivant, supposé écrit dans un fichier &amp;lt;code&amp;gt;post-install.yum&amp;lt;/code&amp;gt; :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
update&lt;br /&gt;
install gparted pavucontrol bash-completion \ &lt;br /&gt;
dconf-editor&lt;br /&gt;
run&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour l’exécuter, il suffit simplement de passer à la commande yum&lt;br /&gt;
shell le chemin du fichier :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum shell post-install.yum&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notez cependant que vous serez invités, comme pour n’importe quelle transaction YUM par défaut, à confirmer chaque opération à chaque fois qu’il vous le sera demandé. Avec un tel script, que vous pourrez maintenir et ainsi enrichir, vous retrouverez aisément votre environnement logiciel à chaque nouvelle version de Fedora.&lt;br /&gt;
&lt;br /&gt;
== A propos de cette doc ==&lt;br /&gt;
&lt;br /&gt;
Cette documentation a été initialement publiée par Matthieu Saulnier dans l&#039;excellent magazine de la communauté francophone de Fedora : [http://mag.fedora-fr.org/wiki/Accueil#T.C3.A9l.C3.A9chargements_disponibles_.21 MUFFIN n°3].&lt;br /&gt;
&lt;br /&gt;
== Liens ==&lt;br /&gt;
&lt;br /&gt;
Voir aussi :&lt;br /&gt;
&lt;br /&gt;
* La fiche [[Fiches:Administration-ficheinstall-Fedora|Comment installer un programme sous Fedora ?]]&lt;br /&gt;
* [[Software-soft_gere-rpm|RPM (RedHat Package Manager), URPM (User RPM) et apt-get (User RPM)]]&lt;br /&gt;
* [http://doc.fedora-fr.org/wiki/YUM_:_Configuration_du_gestionnaire_de_paquets YUM : Configuration du gestionnaire de paquets] sur Fedora-FR.&lt;br /&gt;
&lt;br /&gt;
{{Copy|2011|[[Utilisateur:MatthieuS|Matthieu Saulnier]]|CC-BY-SA}}&lt;/div&gt;</summary>
		<author><name>MatthieuS</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20914</id>
		<title>YUM</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20914"/>
		<updated>2011-11-14T13:57:01Z</updated>

		<summary type="html">&lt;p&gt;MatthieuS : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Quelques subtiles options de YUM =&lt;br /&gt;
&lt;br /&gt;
par [[Utilisateur:MatthieuS|Matthieu]]&lt;br /&gt;
&lt;br /&gt;
== La clause info ==&lt;br /&gt;
&lt;br /&gt;
Cette clause permet de récupérer un descriptif du paquet qui lui est passé en paramètre, qu’il soit installé sur le système ou non ; elle affiche également d’autres compléments relatifs à ce paquet tels que sa version, son architecture, sa taille, le dépôt le proposant, ou encore sa licence :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum info arora &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Nom : arora &amp;lt;br /&amp;gt;&lt;br /&gt;
Architecture : x86_64 &amp;lt;br /&amp;gt;&lt;br /&gt;
Version : 0.11.0 &amp;lt;br /&amp;gt;&lt;br /&gt;
Révision : 2.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
Taille : 811 k &amp;lt;br /&amp;gt;&lt;br /&gt;
Dépôt : fedora &amp;lt;br /&amp;gt;&lt;br /&gt;
Résumé : A cross platform web browser &amp;lt;br /&amp;gt;&lt;br /&gt;
URL : http://code.google.com/p/arora/ &amp;lt;br /&amp;gt;&lt;br /&gt;
Licence : GPLv2+ &amp;lt;br /&amp;gt;&lt;br /&gt;
Description : Arora is a simple, cross &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; platform web browser based on &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; the QtWebKit engine. Currently, &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; Arora is still under &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; development, but it already has &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; support for browsing and other &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; common features such as web &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; history and bookmarks.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause repolist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause liste simplement tous les dépôts activés pour votre système &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist &amp;lt;br /&amp;gt;&lt;br /&gt;
id du dépôt nom du dépôt statut &amp;lt;br /&amp;gt;&lt;br /&gt;
fedora Fedora 15 - x86_64 24 085 &amp;lt;br /&amp;gt;&lt;br /&gt;
updates Fedora 15 - x86_64 - Updates 872 &amp;lt;br /&amp;gt;&lt;br /&gt;
repolist: 25 767 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On notera qu’en plus des dépôts activés, la commande affiche, dans la colonne « statut », le nombre de paquets composant chacun d’entre eux. Pour afficher tous les dépôts définis dans votre système, y compris ceux désactivés (les dépôts de test par exemple), on rajoutera le mot-clé all à la commande &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause provides ==&lt;br /&gt;
Si vous vous êtes déjà demandé quel paquet fournit un programme ou&lt;br /&gt;
une bibliothèque donnée, la clause provides devrait répondre à vos&lt;br /&gt;
attentes : celle-ci interroge en effet les dépôts pour déterminer le paquet&lt;br /&gt;
proposant la ressource qui lui est passée en paramètre. Une fois le&lt;br /&gt;
paquet identifié, ne reste plus qu’à l’installer. Notez que dans le cas où&lt;br /&gt;
l’on souhaite trouver un paquet à partir d’un fichier, cette clause attend&lt;br /&gt;
le chemin complet supposé de ce dernier (ou au moins une expression&lt;br /&gt;
rationnelle) &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides /bin/cp &amp;lt;br /&amp;gt;&lt;br /&gt;
$ yum provides \*/thunderbird&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notez cependant que pour les bibliothèques dynamiques en revanche (des fichiers *.so.*), le nom même du fichier suffit &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides ld-linux.so.2&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause check ==&lt;br /&gt;
Cette clause va vérifier l’intégrité de votre base de données RPM &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum check&lt;br /&gt;
check all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tel est le message que cette commande doit retourner, après quelques minutes d’exécution, si aucune dépendance brisée ni paquets dupliqués n’ont été détectés. Dans le cas contraire, il est vital de corriger les problèmes signalés pour le bon fonctionnement de votre système. La commande package-cleanup devrait vous y aider d’ailleurs.&lt;br /&gt;
&lt;br /&gt;
== La clause deplist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause renvoie, pour un paquet passé en paramètre, la liste de ses&lt;br /&gt;
dépendances &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum deplist wget &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Recherche de dépendances : &amp;lt;br /&amp;gt;&lt;br /&gt;
paquet : wget.x86_64 1.12-3.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libssl.so.10()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: openssl.x86_64 1.0.0d-1.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : librt.so.1()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libc.so.6(GLIBC_2.8)(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libdl.so.2()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : /sbin/install-info &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: info.x86_64 4.13a-15.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libz.so.1()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: zlib.x86_64 1.2.5-3.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : rtld(GNU_HASH) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.i686 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : libcrypto.so.10()(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: openssl.x86_64 1.0.0d-1.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : librt.so.1(GLIBC_2.2.5)(64bit) &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: glibc.x86_64 2.13.90-9 &amp;lt;br /&amp;gt;&lt;br /&gt;
:dépendance : /bin/sh &amp;lt;br /&amp;gt;&lt;br /&gt;
:provider: bash.x86_64 4.2.10-2.fc15&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Une commande à réserver à tous ceux qui s’intéressent à la façon dont YUM gère les dépendances d’un paquet...&lt;br /&gt;
&lt;br /&gt;
== La clause clean ==&lt;br /&gt;
&lt;br /&gt;
YUM conserve les différentes informations relatives aux dépôts, et en particulier les paquets les composants, dans des fichiers de cache durant&lt;br /&gt;
un certain temps (dans le dossier /var/cache/yum/ pour information). De cette façon, YUM n’a pas à interroger systématiquement les dépôts en ligne à chaque utilisation, ce qui rallongerait considérablement ses traitements. Contrairement au gestionnaire de paquetages APT, YUM est en mesure de mettre à jour son cache automatiquement, et ce aussi souvent que nécessaire.&lt;br /&gt;
&lt;br /&gt;
Il peut néanmoins s’avérer nécessaire de purger ce cache manuellement, pour forcer YUM à récupérer de nouvelles données dépôts à jour : quoique ce cas demeure exceptionnel, cette opération s’imposera si, par exemple, YUM devait renvoyer des erreurs indiquant des incohérences dans sa base de données &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum clean all&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ainsi, au prochain lancement de YUM, les informations dépôts seront de nouveau générées.&lt;br /&gt;
&lt;br /&gt;
== La clause makecache ==&lt;br /&gt;
&lt;br /&gt;
Cette clause est le pendant de la précédente dans la mesure où elle&lt;br /&gt;
permet de lancer manuellement une mise à jour des méta-données de&lt;br /&gt;
YUM relatives aux dépôts &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum makecache&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== L’option --exclude ==&lt;br /&gt;
&lt;br /&gt;
Si, pour diverses raisons, vous souhaitiez exclure un paquet particulier&lt;br /&gt;
d’une mise à jour, l’option --exclude est faite pour vous &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum update --exclude=kernel,kernel-devel&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande va ainsi empêcher les paquets kernel et kerneldevel d’être mis à jour. Cette opération est cependant loin d’être anodine, sachant que les mises à jour visent avant tout à corriger des bogues voire des problèmes de sécurité ; aussi ne l’utilisez que si vous savez ce que vous faites...&lt;br /&gt;
&lt;br /&gt;
== L’option --skip-broken ==&lt;br /&gt;
&lt;br /&gt;
Cette option est utile lorsque certains paquets que l’on souhaite installer ou mettre à jour présentent des dépendances non disponibles dans les dépôts. Un tel cas de figure—rare cependant—se produit par exemple lorsque le noyau est mis à jour, mais que des paquets kmod- &amp;lt;module&amp;gt; installés, construits pour une version spécifique du noyau, n’ont pas encore été mis à disposition dans les dépôts pour celui-ci. Dans pareille situation, YUM refusera de poursuivre la mise à jour ; les dépendances de ces paquets en erreur sont dites « brisées ». L’utilisation de cette option fera en sorte que YUM ne bloque pas une transaction à cause de ces derniers : ils ne seront tout simplement pas traités, contrairement aux autres paquets aux dépendances satisfaites &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum update --skip-broken&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette option est une alternative peut-être plus pratique à --exclude pour ce type de problèmes.&lt;br /&gt;
&lt;br /&gt;
== L’option --setopt ==&lt;br /&gt;
&lt;br /&gt;
Les options de YUM ne se limitent cependant pas aux deux précédentes susmentionnées : YUM comporte en effet une foultitude de réglages « cachés », documentés dans la page de manuel de yum.conf. Ces réglages sont passés à la commande yum au travers de l’option --&lt;br /&gt;
setopt=&amp;lt;option&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Parmi ces différents réglages, retenons les suivants.&lt;br /&gt;
* Le réglage throttle=&amp;lt;bande passante&amp;gt; permet de modifier à la volée&lt;br /&gt;
la bande passante rendue disponible au téléchargement des&lt;br /&gt;
paquets &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum install pidgin --setopt=throttle=3M&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande permet ainsi d’allouer temporairement à YUM une bande passante de 3 Mio par seconde.&lt;br /&gt;
&lt;br /&gt;
* YUM propose divers réglages également permettant de modifier la façon dont ses messages seront affichés, en y ajoutant notamment de la couleur &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum list *gstreamer* --setopt=color_list_available_install=green --setopt=color_list_installed_reinstall=blue&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande va ainsi lister les paquets contenant la chaîne « gstreamer » dans leur nom, en affichant ceux déjà installés sur le système en bleu et ceux disponibles en ligne en vert.&lt;br /&gt;
&lt;br /&gt;
* Un dernier réglage, introduit dans la dernière version de YUM (livrée avec Fedora 15), est particulièrement notable puisqu’il permet, à la désinstallation d’un paquet, de supprimer également toutes ses dépendances non requises par d’autres paquets en même temps :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum remove empathy --setopt=clean_requirements_on_remove=1&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande désinstallera ainsi non seulement Empathy, mais aussi par exemple toutes les bibliothèques requises par ce dernier et non utiles à d’autres programmes. Un tel réglage permet ainsi de maintenir sa base de données de paquets sans le moindre effort, en ne conservant que les paquets réellement utiles au fonctionnement du système et des applications le composant.&lt;br /&gt;
&lt;br /&gt;
== Retour vers le passé ==&lt;br /&gt;
&lt;br /&gt;
Nous nous intéresserons ici plus particulièrement à une clause relativement&lt;br /&gt;
peu connue de YUM, mais ô combien utile : la clause history. Celle-ci vous permettra non seulement de suivre l’historique de vos opérations YUM, mais aussi d’annuler certaines d’entre elles le plus simplement du monde. Pour mieux cerner son fonctionnement, nous allons présenter dans la suite un exemple d’utilisation.&lt;br /&gt;
&lt;br /&gt;
Supposons que nous souhaitons installer, par exemple afin de compiler un programme à partir de ses sources, le paquet qt-devel &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum install qt-devel&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus de ce paquet seront également installés une foultitude de paquets de développement. Une fois votre programme compilé, vous n’avez a priori plus besoin de tous ces paquets et souhaitez donc en toute logique les désinstaller. Or vous avez lancé depuis quantité de mises à jour et installé également d’autres paquets. Comment donc retrouver d’une part les paquets installés avec qt-devel et les supprimer sans devoir les retrouver un par un ? C’est là que la clause history nous sera d’un grand secours. On pourra ainsi lister les différentes opérations YUM exécutées sur le système avec la commande suivante &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum history list&amp;quot; &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Id | Identifiant utilisateur | Date et heure | Action | Modifié &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;--------------------------------------------------------------------&amp;lt;/nowiki&amp;gt; &amp;lt;br /&amp;gt;&lt;br /&gt;
159 | Casper &amp;lt;Casper&amp;gt; | 2011-05-09 23:49 | Install | 11 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nous identifions alors, à l’aide de l’horodatage, notre installation du paquet&lt;br /&gt;
qt-devel et de ses dépendances. Nous pouvons alors demander l’annulation—ici la désinstallation—de cette transaction ainsi &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ su -lc &amp;quot;yum history undo 159&amp;quot;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le numéro 159 correspond à l’identifiant unique de notre transaction YUM listée dans les sorties de la commande yum history list. En plus de vous aider à maintenir un système propre et léger, cette clause s’avérera extrêment utile pour annuler par exemple une mise à jour présentant des instabilités : on reviendra ainsi sans effort à l’état précédent du système pour mieux analyser le problème.&lt;/div&gt;</summary>
		<author><name>MatthieuS</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20913</id>
		<title>YUM</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=YUM&amp;diff=20913"/>
		<updated>2011-11-14T13:06:43Z</updated>

		<summary type="html">&lt;p&gt;MatthieuS : Page créée avec « = Quelques subtiles options de YUM =  par Matthieu  == La clause info ==  Cette clause permet de récupérer un descriptif du paquet qui lui est pas... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Quelques subtiles options de YUM =&lt;br /&gt;
&lt;br /&gt;
par [[Utilisateur:MatthieuS|Matthieu]]&lt;br /&gt;
&lt;br /&gt;
== La clause info ==&lt;br /&gt;
&lt;br /&gt;
Cette clause permet de récupérer un descriptif du paquet qui lui est passé en paramètre, qu’il soit installé sur le système ou non ; elle affiche également d’autres compléments relatifs à ce paquet tels que sa version, son architecture, sa taille, le dépôt le proposant, ou encore sa licence :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum info arora &amp;lt;br /&amp;gt;&lt;br /&gt;
[. . .] &amp;lt;br /&amp;gt;&lt;br /&gt;
Nom : arora &amp;lt;br /&amp;gt;&lt;br /&gt;
Architecture : x86_64 &amp;lt;br /&amp;gt;&lt;br /&gt;
Version : 0.11.0 &amp;lt;br /&amp;gt;&lt;br /&gt;
Révision : 2.fc15 &amp;lt;br /&amp;gt;&lt;br /&gt;
Taille : 811 k &amp;lt;br /&amp;gt;&lt;br /&gt;
Dépôt : fedora &amp;lt;br /&amp;gt;&lt;br /&gt;
Résumé : A cross platform web browser &amp;lt;br /&amp;gt;&lt;br /&gt;
URL : http://code.google.com/p/arora/ &amp;lt;br /&amp;gt;&lt;br /&gt;
Licence : GPLv2+ &amp;lt;br /&amp;gt;&lt;br /&gt;
Description : Arora is a simple, cross &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; platform web browser based on &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; the QtWebKit engine. Currently, &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; Arora is still under &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; development, but it already has &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; support for browsing and other &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; common features such as web &amp;lt;br /&amp;gt;&lt;br /&gt;
:&amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt; history and bookmarks.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause repolist ==&lt;br /&gt;
&lt;br /&gt;
Cette clause liste simplement tous les dépôts activés pour votre système &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist &amp;lt;br /&amp;gt;&lt;br /&gt;
id du dépôt nom du dépôt statut &amp;lt;br /&amp;gt;&lt;br /&gt;
fedora Fedora 15 - x86_64 24 085 &amp;lt;br /&amp;gt;&lt;br /&gt;
updates Fedora 15 - x86_64 - Updates 872 &amp;lt;br /&amp;gt;&lt;br /&gt;
repolist: 25 767 &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On notera qu’en plus des dépôts activés, la commande affiche, dans la colonne « statut », le nombre de paquets composant chacun d’entre eux. Pour afficher tous les dépôts définis dans votre système, y compris ceux désactivés (les dépôts de test par exemple), on rajoutera le mot-clé all à la commande &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum repolist all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause provides ==&lt;br /&gt;
Si vous vous êtes déjà demandé quel paquet fournit un programme ou&lt;br /&gt;
une bibliothèque donnée, la clause provides devrait répondre à vos&lt;br /&gt;
attentes : celle-ci interroge en effet les dépôts pour déterminer le paquet&lt;br /&gt;
proposant la ressource qui lui est passée en paramètre. Une fois le&lt;br /&gt;
paquet identifié, ne reste plus qu’à l’installer. Notez que dans le cas où&lt;br /&gt;
l’on souhaite trouver un paquet à partir d’un fichier, cette clause attend&lt;br /&gt;
le chemin complet supposé de ce dernier (ou au moins une expression&lt;br /&gt;
rationnelle) &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides /bin/cp &amp;lt;br /&amp;gt;&lt;br /&gt;
$ yum provides \*/thunderbird&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notez cependant que pour les bibliothèques dynamiques en revanche (des fichiers *.so.*), le nom même du fichier suffit &amp;lt;nowiki&amp;gt;:&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum provides ld-linux.so.2&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== La clause check ==&lt;br /&gt;
Cette clause va vérifier l’intégrité de votre base de données RPM :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;code&amp;quot;&amp;gt;&lt;br /&gt;
$ yum check&lt;br /&gt;
check all&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tel est le message que cette commande doit retourner, après quelques&lt;br /&gt;
minutes d’exécution, si aucune dépendance brisée ni paquets dupliqués&lt;br /&gt;
n’ont été détectés. Dans le cas contraire, il est vital de corriger les&lt;br /&gt;
problèmes signalés pour le bon fonctionnement de votre système. La&lt;br /&gt;
commande package-cleanup devrait vous y aider d’ailleurs.&lt;/div&gt;</summary>
		<author><name>MatthieuS</name></author>
	</entry>
	<entry>
		<id>https://lea-linux.org/docs/index.php?title=Utilisateur:MatthieuS&amp;diff=20912</id>
		<title>Utilisateur:MatthieuS</title>
		<link rel="alternate" type="text/html" href="https://lea-linux.org/docs/index.php?title=Utilisateur:MatthieuS&amp;diff=20912"/>
		<updated>2011-11-14T12:34:29Z</updated>

		<summary type="html">&lt;p&gt;MatthieuS : Page créée avec « Matthieu, Fedora.  Bienvenue sur ma page ! »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Matthieu, Fedora.&lt;br /&gt;
&lt;br /&gt;
Bienvenue sur ma page !&lt;/div&gt;</summary>
		<author><name>MatthieuS</name></author>
	</entry>
</feed>