Installer, supprimer et mettre à jour des paquets est une activité typique sous Linux. La plupart des distributions Linux fournissent une sorte d’utilitaire de gestion des paquets. Par exemple, apt-get, dpkg, rpm, yum, etc.
Sur certaines distributions Linux, yum est le gestionnaire de paquets par défaut.
Yum signifie Yellowdog Updater Modified.
Cet article explique les 15 commandes yum les plus fréquemment utilisées avec des exemples.
Installer un paquet en utilisant yum install
Pour installer un paquet, faites ‘yum install nomdupaquet’. Cela identifiera également les dépendances automatiquement et les installera.
L’exemple suivant installe le paquet postgresql.
# yum install postgresql.x86_64Resolving DependenciesInstall 2 Package(s)Is this ok : yPackage(s) data still to download: 3.0 M(1/2): postgresql-9.0.4-5.fc15.x86_64.rpm | 2.8 MB 00:11(2/2): postgresql-libs-9.0.4-5.fc15.x86_64.rpm | 203 kB 00:00------------------------------------------------------------------Total 241 kB/s | 3.0 MB 00:12 Running Transaction Installing : postgresql-libs-9.0.4-5.fc15.x86_64 1/2 Installing : postgresql-9.0.4-5.fc15.x86_64 2/2 Complete!
Par défaut ‘yum install’, vous demandera d’accepter ou de refuser avant d’installer les paquets. Si vous voulez que yum installe automatiquement sans vous inviter, utilisez l’option -y comme indiqué ci-dessous.
# yum -y install postgresql.x86_64
Désinstaller un paquet en utilisant yum remove
Pour supprimer un paquet (ainsi que toutes ses dépendances), utilisez ‘yum remove package’ comme indiqué ci-dessous.
# yum remove postgresql.x86_64Resolving Dependencies---> Package postgresql.x86_64 0:9.0.4-5.fc15 will be erasedIs this ok : yRunning Transaction Erasing : postgresql-9.0.4-5.fc15.x86_64 1/1 Removed: postgresql.x86_64 0:9.0.4-5.fc15Complete!
Mettre à niveau un paquet existant en utilisant yum update
Si vous avez une ancienne version d’un paquet, utilisez ‘yum update package’ pour le mettre à niveau vers la dernière version actuelle. Cela permettra également d’identifier et d’installer toutes les dépendances requises.
# yum update postgresql.x86_64
Recherche d’un paquet à installer à l’aide de yum search
Si vous ne connaissez pas le nom exact du paquet à installer, utilisez ‘yum search keyword’, qui recherchera tous les paquets qui correspondent au ‘mot-clé’ et l’affichera.
Les exemples suivants recherchent dans le dépôt yum tous les paquets qui correspondent au mot-clé ‘firefox’ et affichent les paquets disponibles.
# yum search firefoxLoaded plugins: langpacks, presto, refresh-packagekit============== N/S Matched: firefox ======================firefox.x86_64 : Mozilla Firefox Web browsergnome-do-plugins-firefox.x86_64 : gnome-do-plugins for firefoxmozilla-firetray-firefox.x86_64 : System tray extension for firefoxmozilla-adblockplus.noarch : Adblocking extension for Mozilla Firefoxmozilla-noscript.noarch : JavaScript white list extension for Mozilla FirefoxName and summary matches only, use "search all" for everything.
Afficher des informations supplémentaires sur un paquet en utilisant yum info
Une fois que vous avez recherché un paquet en utilisant yum search, vous pouvez utiliser ‘yum info package’ pour afficher des informations supplémentaires sur le paquet.
Les exemples suivants affichent des informations supplémentaires sur le paquet samba-common.
# yum info samba-common.i686Loaded plugins: langpacks, presto, refresh-packagekitAvailable PackagesName : samba-commonArch : i686Epoch : 1Version : 3.5.11Release : 71.fc15.1Size : 9.9 MRepo : updatesSummary : Files used by both Samba servers and clientsURL : http://www.samba.org/License : GPLv3+ and LGPLv3+Description : Samba-common provides files necessary for both the server and client : packages of Samba.
Voir tous les paquets disponibles en utilisant yum list
La commande suivante listera tous les paquets disponibles dans la base de données yum.
# yum list | less
Lister uniquement les paquets installés à l’aide de yum list installed
Pour afficher tous les paquets installés sur votre système, exécutez la commande yum suivante.
# yum list installed | less
À quel paquet appartient un fichier ? – Utilisez yum provides
Utilisez ‘yum provides’ si vous aimez savoir à quel paquet appartient un fichier particulier. Par exemple, si vous aimez connaître le nom du paquet qui possède le fichier /etc/sysconfig/nfs, faites ce qui suit.
# yum provides /etc/sysconfig/nfsLoaded plugins: langpacks, presto, refresh-packagekit1:nfs-utils-1.2.3-10.fc15.x86_64 : NFS utilities and supporting clients and : daemons for the kernel NFS serverRepo : fedoraMatched from:Filename : /etc/sysconfig/nfs1:nfs-utils-1.2.4-1.fc15.x86_64 : NFS utilities and supporting clients and : daemons for the kernel NFS serverRepo : updatesMatched from:Filename : /etc/sysconfig/nfs1:nfs-utils-1.2.4-1.fc15.x86_64 : NFS utilities and supporting clients and : daemons for the kernel NFS serverRepo : installedMatched from:Other : Provides-match: /etc/sysconfig/nfs
Liste des groupes de logiciels disponibles en utilisant yum grouplist
Dans yum, plusieurs paquets apparentés sont regroupés dans un groupe spécifique. Au lieu de rechercher et d’installer tous les paquets individuels qui appartiennent à une fonction spécifique, vous pouvez simplement installer le groupe, ce qui installera tous les paquets qui appartiennent au groupe.
Pour afficher tous les groupes de logiciels disponibles, exécutez ‘yum grouplist’ comme indiqué ci-dessous. La sortie est répertoriée dans trois groupes – Groupes installés, Groupes de langues installées et Groupes disponibles.
# yum grouplistInstalled Groups: Administration Tools Base Design Suite ....Installed Language Groups: Arabic Support Armenian Support Bengali Support ....Available Groups: Authoring and Publishing Books and Guides Clustering DNS Name Server Development Libraries Development Tools Directory Server Dogtag Certificate System ...
Installer un groupe de logiciels spécifique à l’aide de yum groupinstall
Pour installer un groupe de logiciels spécifique, utilisez l’option groupinstall comme indiqué ci-dessous. Dans l’exemple suivant, le groupe ‘Serveur de nom DNS’ contient bind et bind-chroot.
# yum groupinstall 'DNS Name Server'Dependencies ResolvedInstall 2 Package(s)Is this ok : yPackage(s) data still to download: 3.6 M(1/2): bind-9.8.0-9.P4.fc15.x86_64.rpm | 3.6 MB 00:15(2/2): bind-chroot-9.8.0-9.P4.fc15.x86_64.rpm | 69 kB 00:00-----------------------------------------------------------------Total 235 kB/s | 3.6 MB 00:15Installed: bind-chroot.x86_64 32:9.8.0-9.P4.fc15Dependency Installed: bind.x86_64 32:9.8.0-9.P4.fc15Complete!
Note : Vous pouvez également installer la base de données MySQL en utilisant yum groupinstall comme nous l’avons abordé précédemment.
Mise à niveau d’un groupe de logiciels existant à l’aide de groupupdate
Si vous avez déjà installé un groupe de logiciels à l’aide de yum groupinstall, et que vous souhaitez le mettre à niveau vers la dernière version, utilisez ‘yum groupupdate’ comme indiqué ci-dessous.
# yum groupupdate 'Graphical Internet'Dependencies ResolvedUpgrade 5 Package(s)Is this ok : y Running Transaction Updating : evolution-data-server-3.0.2-1.fc15.x86_64 1/10 Updating : evolution-3.0.2-3.fc15.x86_64 2/10 Updating : evolution-NetworkManager-3.0.2-3.fc15.x86_64 3/10 Updating : evolution-help-3.0.2-3.fc15.noarch 4/10 Updating : empathy-3.0.2-3.fc15.x86_64 5/10 Cleanup : evolution-NetworkManager-3.0.1-1.fc15.x86_64 6/10 Cleanup : evolution-help-3.0.1-1.fc15.noarch 7/10 Cleanup : evolution-3.0.1-1.fc15.x86_64 8/10 Cleanup : empathy-3.0.1-3.fc15.x86_64 9/10 Cleanup : evolution-data-server-3.0.1-1.fc15.x86_64 10/10 Complete!
Désinstaller un groupe de logiciels en utilisant yum groupremove
Pour supprimer un groupe de logiciels existant, utilisez ‘yum groupremove’ comme indiqué ci-dessous.
# yum groupremove 'DNS Name Server'Dependencies ResolvedRemove 2 Package(s)Is this ok : yRunning Transaction Erasing : 32:bind-chroot-9.8.0-9.P4.fc15.x86_64 1/2 Erasing : 32:bind-9.8.0-9.P4.fc15.x86_64 2/2 Complete!
Afficher vos dépôts yum actuels
Toutes les commandes yum vont à l’encontre d’un ou plusieurs dépôts yum. Pour afficher tous les dépôts yum qui sont configurés dans votre système, faites ‘yum repolist’ comme indiqué ci-dessous.
Ce qui suit n’affichera que les dépôts activés.
# yum repolistrepo id repo name statusfedora Fedora 15 - x86_64 24,085updates Fedora 15 - x86_64 - Updates 5,612
Pour afficher tous les dépôts (activés et désactivés), utilisez ‘yum repolist all’.
# yum repolist allrepo id repo name statusfedora Fedora 15 - x86_64 enabled: 24,085fedora-debuginfo Fedora 15 - x86_64 - Debug disabledfedora-source Fedora 15 - Source disabledrawhide-debuginfo Fedora - Rawhide - Debug disabledrawhide-source Fedora - Rawhide - Source disabledupdates Fedora 15 - x86_64 - Updates enabled: 5,612updates-debuginfo Fedora 15 - x86_64 - Updates - Debug disabledupdates-source Fedora 15 - Updates Source disabledupdates-testing Fedora 15 - x86_64 - Test Updates disabledupdates-testing-debuginfo Fedora 15 - x86_64 - Test Updates Debug disabledupdates-testing-source Fedora 15 - Test Updates Source disabled
Pour afficher uniquement les dépôts désactivés, utilisez ‘yum repositories disabled’.
Installer à partir d’un dépôt désactivé en utilisant yum -enablerepo
Par défaut, yum installe uniquement à partir des dépôts activés. Pour une raison quelconque, si vous aimez installer un paquet à partir d’un dépôt désactivé, utilisez l’option -enablerepo dans le ‘yum install’ comme indiqué ci-dessous.
# yum --enablerepo=fedora-source install vim-X11.x86_64Dependencies ResolvedInstall 1 Package(s)Is this ok : yRunning Transaction Installing : 2:vim-X11-7.3.138-1.fc15.x86_64 1/1 Complete!
Exécuter les commandes yum de manière interactive en utilisant le Shell Yum
Yum fournit le shell interactif pour exécuter plusieurs commandes comme indiqué ci-dessous.
# yum shellSetting up Yum Shell> info samba.x86_64Available PackagesName : sambaArch : x86_64Epoch : 1Version : 3.5.11Release : 71.fc15.1Size : 4.6 MRepo : updatesSummary : Server and Client software to interoperate with Windows machinesURL : http://www.samba.org/License : GPLv3+ and LGPLv3+Description : : Samba is the suite of programs by which a lot of PC-related : machines share files, printers, and other information (such as : lists of available files and printers). The Windows NT, OS/2, and : Linux operating systems support this natively, and add-on packages : can enable the same thing for DOS, Windows, VMS, UNIX of all : kinds, MVS, and more. This package provides an SMB/CIFS server : that can be used to provide network services to SMB/CIFS clients. : Samba uses NetBIOS over TCP/IP (NetBT) protocols and does NOT : need the NetBEUI (Microsoft Raw NetBIOS frame) protocol.>
Yum peut également lire les commandes d’un fichier texte et les exécuter une par une. Ceci est très utile lorsque vous avez plusieurs systèmes. Au lieu d’exécuter la même commande sur tous les systèmes, créez un fichier texte avec ces commandes, et utilisez ‘yum shell’ pour exécuter ces commandes comme indiqué ci-dessous.
# cat yum_cmd.txtrepolistinfo nfs-utils-lib.x86_64# yum shell yum_cmd.txt repo id repo name statusfedora Fedora 15 - x86_64 24,085updates Fedora 15 - x86_64 - Updates 5,612Available PackagesName : nfs-utils-libArch : x86_64Version : 1.1.5Release : 5.fc15Size : 61 kRepo : fedoraSummary : Network File System Support LibraryURL : http://www.citi.umich.edu/projects/nfsv4/linux/License : BSDDescription : Support libraries that are needed by the commands and : daemons the nfs-utils rpm.Leaving Shell