FAQ LinuxConsultez toutes les FAQ

Nombre d'auteurs : 54, nombre de questions : 240, dernière mise à jour : 9 novembre 2017  Ajouter une question

 

Cette FAQ a été réalisée à partir des contributions des membres du forum Linux de Developpez.com et de l'équipe de rédaction. Merci à eux !

Nous sommes perpétuellement à l'écoute de vos suggestions et corrections, n'hésitez pas à nous en faire part sur le forum.


SommaireDistributions LinuxFedora (8)
précédent sommaire suivant
 

YUM signifie « Yellowdog Updater, Modified ».

Il s'agit d'un gestionnaire de package basé sur les packages RPM (avec gestion des dépendances) et présent dans les distributions RedHat Linux Enterprise, CentOS ou encore Fedora.

Mis à jour le 24 octobre 2013 ok.Idriss

Fedora (anciennement Fedora Core) est une cousine de Red Hat et utilise logiquement les RPM (RPM Package Manager) qui sont des archives contenant des programmes précompilés prêts à l'emploi. Évidemment, il est possible comme sur certains systèmes non communautaires de les chercher un par un sur internet et de les installer manuellement. Mais la gestion des dépendances peut quelquefois devenir un véritable casse-tête.

YUM est un outil permettant de gérer les installations, les désinstallations et les mises à jour de paquetages au format RPM. Il gère les dépendances en téléchargeant ce qui est nécessaire. Il trouve les paquetages sur différentes sources (site internet) que l'on appelle des dépôts.

YUM est fourni en standard dans toutes les versions de Fedora, de RedHat Enterprise Linux ou encore de son clone CentOS.

Mis à jour le 24 octobre 2013 gorgonite ok.Idriss

On doit créer un fichier pour chaque dépôt dans le dossier /etc/yum.repos.d avec un nom de la forme nomdepot.repo.

Ils doivent avoir cette forme :

Code bash : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
[base] 
name=Fedora Core $releasever - $basearch - Base 
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/ 
mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever 
enabled=1 
gpgcheck=1 
  
[updates-released] 
name=Fedora Core $releasever - $basearch - Released Updates 
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/$releasever/$basearch/ 
mirrorlist=http://fedora.redhat.com/download/mirrors/updates-released-fc$releasever 
enabled=1 
gpgcheck=1

enabled
  • 0 ne pas utiliser le dépôt.
  • 1 utiliser le dépôt.


gpgcheck
  • 0 ne pas vérifier les clés gpg.
  • 1 vérifier les clés gpg.


N.B: utiliser gpgcheck est un gage de sécurité supplémentaire.
Il est alors nécessaire d'ajouter à la main les clés gpg des sites que l'on souhaite utiliser :

Code bash : Sélectionner tout
1
2
$ rpm -qa | grep gpg 
$ rpm --import http://www.fedora.us/FEDORA-GPG-KEY

Et il y a aussi un fichier principal yum.conf :

Code bash : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
[main] 
cachedir=/var/cache/yum 
debuglevel=2 
logfile=/var/log/yum.log 
pkgpolicy=newest 
distroverpkg=redhat-release 
tolerant=1 
exactarch=1 
# nombre de tentatives de connexion à un serveur 
retries=2 
obsoletes=1 
# contrôle des clé gpg , pour le désactiver, mettre à 0 
gpgcheck=1

Mis à jour le 24 octobre 2013 gorgonite ok.Idriss

Mettre à jour tout votre système :

Code bash : Sélectionner tout
$ yum update

N.B : mais il faut parfois mettre yum à jour avant tout le reste.

Code bash : Sélectionner tout
$ yum update yum

Pour rechercher un paquet :

Code bash : Sélectionner tout
$ yum list <nom du paquet>

N.B : yum accepte le caractère joker * (étoile).

Pour installer un paquet :

Code bash : Sélectionner tout
$ yum install <nom du paquet>

Pour supprimer un paquet :

Code bash : Sélectionner tout
$ yum remove <nom du paquet>

Voir la liste de ce qui devrait être mis à jour :

Code bash : Sélectionner tout
$ yum check-update

Mise à jour sélective : par exemple, ceci est surtout pratique pour mettre à jour votre système sans mettre à jour votre noyau si avez des modules que vous ne voulez pas réinstaller à chaque fois...

Code bash : Sélectionner tout
$ yum --exclude=<nom du paquet> update

Pour exclure un dépôt temporairement :

Code bash : Sélectionner tout
$ yum --disablerepo=<nom du dépôt> update

Pour inclure un dépôt temporairement :

Code bash : Sélectionner tout
$ yum --enablerepo=<nom du dépôt> update

Faire de la place sur le disque en supprimant ce dont yum n'a plus besoin :

Code bash : Sélectionner tout
$ yum clean

N.B : Ce sont les principales commandes disponibles avec yum mais il en existe de nombreuses autres que vous pouvez découvrir en tapant simplement man yum

Mis à jour le 24 octobre 2013 gorgonite ok.Idriss

Lorsque yum met à jour un package, il remplace l'ancienne version par la nouvelle. Mais dans le cas du noyau (kernel), yum n'efface jamais une version du noyau sans que vous le demandiez explicitement. Lors d'une nouvelle version du noyau, il installera celle-ci et modifiera automatiquement votre fichier /boot/grub/grub.conf de sorte que ce soit le nouveau kernel qui se charge au prochain reboot.

Ainsi l'ancien kernel ne sera-t-il effacé que si vous le demandez explicitement.

Mis à jour le 24 octobre 2013 gorgonite ok.Idriss

Il existe quelques interfaces graphiques simplifiant encore l'utilisation de Yum :

  • yumex
  • kyum
  • smartpm

Mis à jour le 24 octobre 2013 gorgonite ok.Idriss

Exemple pour passer de FC4 (Fedora Core4) à FC5 :

Code bash : Sélectionner tout
1
2
3
$ rpm -Uvh http://download.fedora.redhat.com/pub/fedora/linux/core/5/i386/os/Fedora/RPMS/fedora-release-5-5.noarch.rpm 
$ yum update yum 
$ yum upgrade

Mis à jour le 24 octobre 2013 gorgonite ok.Idriss

La façon privilégiée d'installer un logiciel sous Fedora est de passer par yum, qui téléchargera automatiquement les mises à jour. Mais que faire si vous avez besoin d'un nouveau noyau et que vous n'avez pas de connexion internet ? Cela arrive parfois, par exemple si l'on a besoin d'un nouveau noyau pour pouvoir installer le pilote de son modem.

Regardez quels packages relatifs au noyau ont été installés :

Code bash : Sélectionner tout
1
2
3
4
$ rpm -q -a *kern* 
kernel-devel-2.6.15-1.2054_FC5 
kernel-2.6.15-1.2054_FC5 
glibc-kernheaders-3.0-5.2

Ici les packages à mettre à jour sont kernel-devel et kernel.

Téléchargez depuis un autre système d'exploitation ou depuis une autre machine les mises à jour sur le site de Fedora.

Installez-les, sans écraser le noyau actuel :

Code bash : Sélectionner tout
1
2
$ rpm -ivh kernel-2.6.17-1.2157_FC5.i686.rpm 
$ rpm -ivh kernel-devel-2.6.17-1.2157_FC5.i686.rpm

Vérifiez qu'un fichier initrd contenant le numéro de version du nouveau noyau a bien été créé dans le répertoire /boot :

Code bash : Sélectionner tout
1
2
$ ls /boot/initrd* 
/boot/initrd-2.6.15-1.2054_FC5.img  /boot/initrd-2.6.17-1.2157_FC5.img

Vérifiez qu'une nouvelle section title correspondant au noyau fraichement installé a bien été ajoutée dans le fichier /boot/grub/grub.conf.

Redémarrer la machine pour tester le nouveau noyau. Vous pourrez toujours sélectionner l'ancien noyau au démarrage s'il y a un problème avec le nouveau.

Si tout s'est bien passé, vous pouvez si vous le souhaitez désinstaller l'ancien noyau :

Code bash : Sélectionner tout
1
2
$ rpm -e kernel-2.6.15 
$ rpm -e kernel-devel-2.6.15

Mis à jour le 24 octobre 2013 Nightfall ok.Idriss

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2017 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

 
Contacter le responsable de la rubrique Linux