|
Ce document est disponible en: English Français Italiano |
La gestion de paquets facileRésumé:
Beaucoup de gens pensent que Linux est un système d'exploitation compliqué car son système de gestion de paquet-logiciels n'est pas aussi facile d'utilisation que celui de Windows. A mes débuts sous Linux, j'ai cherché un fichier du genre “ setup.exe ” comme sous Windows. De plus, quand j'utilisais les RPM, j'étais assez effrayé par “ l'enfer des dépendances ” qui me demandait d'installer d'autres paquets afin de satisfaire les dépendances. Maintenant, grâce à l'excellent travail de personnes passionnées par le libre, nous pouvons trouver une meilleure façon de gérer les paquets-logiciels que la méthode CEL (cliquer et lancer) de Windows. Cet article va vous initier aux outils YUM et APT-GET afin d'obtenir des logiciels et autres outils pour travailler avec ceux-ci. Je parlerai également des systèmes de gestion de paquets spécifiques aux distributions. |
Il y a en général deux types de programmes sous Linux : les exécutables binaires et les scripts. Les petits scripts n'ont pas besoin d'être installés pour fonctionner. Les scripts sont des textes plats (plain text en anglais), qui cherchent leur interpréteur correspondant dans l'environnement PATH. La distribution des petits scripts est très facile, il suffit de les copier. Dans cet article, la notion de logiciel fera référence aux scripts complexes ainsi qu'aux exécutables binaires.
Vu que la plupart des logiciels sous Linux sont des logiciels libres, ils sont distribués sous la forme de code source. Généralement, le code source est contenu dans le tar.gz ou un tar.bz2 avec un script configure. Le script de console configure rassemble les informations du système comme les bibliothèque et les fichiers d'en-tête nécessaires pour compiler le programme et générer un Makefile. Ensuite, le compilateur va compiler le code source sur base des règles définies dans le Makefile. La plupart du temps, il y a une règle intitulée install qui copie les fichiers générés vers la destination.
La méthode d'installation par le code source est la plus difficile pour un débutant. Quand j'étais débutant, j'ai toujours rencontré des problèmes comme l'absence de bibliothèques ou des chemins manquants. Généralement, un débutant ne connaît pas la signification exacte de l'erreur. Et bien sûr, il manque des connaissances suffisantes pour pouvoir la résoudre. Par exemple, la plus grande erreur que j'ai faite a été d'extraire le code source sur une partition FAT32 dans laquelle les liens symboliques ne sont pas supportés. En effet, il n'est pas facile de supprimer le logiciel si il n'y a pas de règle pour désinstaller dans le Makefile et si vous n'avez pas spécifié de répertoire de destination lors de la configuration de façon à séparer vos programmes du reste de votre système. A cause de toutes ces difficultés, certaines personnes ont créé des paquets contenant les binaires pour une installation directe.
Les exemples les plus connus de formats de paquets binaires sont le RPM et le DEB. Ils fournissent une méthode facile pour installer, mettre à jour et désinstaller des paquets. Mais des problèmes existent aussi. Prenons un RPM par exemple. Le problème des dépendances est un cauchemar. Parfois, je trouve cela trop difficile de satisfaire une vérification de dépendance car je suis dans une boucle où il y a trop de paquets que je dois installer séparément.
Nous voulons donc quelque chose qui permet de gérer tous les problèmes inhérents à la gestion de paquets, depuis l'acquisition jusqu'à l'installation en passant par la mise à jour et la suppression. Linux est un système d'exploitation qui est fortement orienté réseau. Vous devez juste connecter votre ordinateur sur Internet. Ensuite, vous pourrez demander à votre gestionnaire de paquets de gérer tout à votre place. YUM et APT-GET me font penser que la gestion de paquets est bien plus simple sous Linux que sous Windows. Cette article se concentrera sur l'utilisation de YUM sur Fedora Core plutôt que sur APT-GET car YUM sur Fedora Core est une nouveauté comparé à APT-GET qui est développé il y a déjà longtemps.
La suite de cet article est organisée comme suit. Je vais tout d'abord expliquer le terme de dépôts qui sera souvent mentionné. Ensuite, je débuterai une grande section à propos de l'utilisation de YUM sous Red Hat/Fedora Core. Je décrirai trois méthodes pour importer les dépôts : installation d'un paquet rpm complet, édition de /etc/yum.conf et importation de la clef GPG et création d'un nouveau fichier dans le répertoire /etc/yum.repos.d correspondant au dépôt et importation de sa clef GPG. Cette partie contiendra également des informations à propos d'autres dépôts ainsi que les plug-in de YUM. Un exemple d'utilisation de YUM se trouvera à la fin de cette partie. Après cela, je montrerai comment utiliser APT-GET sur Red Hat/Fedora Core. Il existe beaucoup d'outils graphiques pour YUM qui peuvent vous aider à gérer vos paquets plus facilement. Deux d'entre eux sont présentés dans YUM graphique. Après un bref regard sur APT-GET sous Debian et ses dérivés, il y aura une démonstration sur Synaptic. Les outils de gestion de paquets fournis par Fedora Core 5 seront abordés dans la dernière partie.
Cette section vous initiera à plusieurs méthodes d'utilisation des outils de gestion afin d'obtenir les paquets depuis Internet et les gérer. L'endroit où vous pouvez obtenir des paquets s'appelle un dépôt. Votre distribution en fournit certainement. Certains volontaires aiment aussi "créer des paquets" pour votre distribution. Si vous désirez les utiliser, vous devrez ajouter les URL de ces personnes dans votre liste de dépôts. Votre distribution peut posséder également plusieurs miroirs de paquets. Si vous voulez améliorer la vitesse de téléchargement, vous devez ajouter un miroir proche de votre situation géographique dans votre liste de dépôts.
Je n'ai utilisé YUM que sur Fedora Core 2, 4 et 5. Les distributions
fournissent elles-même le logiciel YUM.
En règle
générale, il existe trois méthodes pour ajouter des
dépôts (ou regroupements de paquets) :
Ici, je vais vous montrer comment ajouter deux célèbres
dépôts de paquets (freshrpms et linva) via des rpm. Les commandes
suivantes ne sont applicables que sur Fedora Core 5. Si vous utilisez une
distribution différente, allez sur
ayo.freshrpms.net et
rpm.livna.org pour trouver les rpm
correspondant à votre distribution. Ceux-ci sont situés aux
mêmes adresses.
Saisissez
rpm -ivh http://ayo.freshrpms.net/fedora/linux/5/i386/RPMS.freshrpms/freshrpms-release-1.1-1.fc.noarch.rpm rpm -ivh http://rpm.livna.org/fedora/5/i386/livna-release-5-4.noarch.rpm
La commande ci-dessus va ajouter freshrpms et livna dans votre liste de dépôts.
D'autres méthodes sont disponibles afin d'ajouter des dépôts pour YUM. L'une d'elle est d'ajouter l'information concernant le dépôt dans /etc/yum.conf. http://svn.rpmforge.net/svn/trunk/rpms/yum/ à certains exemples. Vous devez juste ajouter l'information du dépôt contenue dans l'exemple à la suite de votre /etc/yum.conf.
Une autre façon de faire est de créer les fichiers adéquats dans le répertoire /etc/yum.repos.d. Sur mon ordinateur, ce répertoire contient les fichiers suivants :
[root@orioleQ yum.repos.d]# ls dries.repo fedora-legacy.repo livna.repo fedora-core.repo fedora-updates.repo livna.repo~ fedora-development.repo fedora-updates-testing.repo livna-testing.repo fedora-extras-development.repo freshrpms.repo fedora-extras.repo livna-devel.repo
Prenons dries.repo comme exemple. Créons un fichier
/etc/yum.repos.d/dries.repo
et saisissons les lignes suivantes dans ce fichier :
[dries] name=Extra Fedora rpms dries - $releasever - $basearch baseurl=http://ftp.belnet.be/packages/dries.ulyssis.org/fedora/linux/$releasever/$basearch/dries/RPMS/ enabled=0 gpgcheck=1
Notez que nous avons mis "enabled" à "0" (inactif) dans ce fichier afin que le dépôt dries ne soit pas en conflit avec nos répertoires lors des mises à jour automatiques. Ensuite, nous importons la clef GPG depuis le dépôt freshrpms.
rpm --import http://freshrpms.net/packages/RPM-GPG-KEY.txt
Et en exécutant
rpm --import http://apt.sw.be/dries/RPM-GPG-KEY.dries.txt
, nous importerons la clef GPG pour le dépôt dries.
Il existe pas mal de dépôts maintenus par des
bénévoles partout dans le monde. Il suffit de les chercher et de
les ajouter dans votre liste de dépôts. Voici une liste de
quelques uns parmi lequels vous pourrez choisir une/des source(s)
appropriée(s) pour votre système.
http://dl.atrpms.net/
http://www.jpackage.org/repos.php
http://newrpms.sunsite.dk/
Lisez les instructions sur leur page Internet pour trouver la méthode
pour les ajouter. En général, vous trouverez un fichier sont le
nom contient "RPM-GPG-KEY". Utilisez alors
rpm --import le.fichier.RPM-GPG-KEY
pour importer la clef GPG.
Il existe beaucoup de plug-ins permettant d'améliorer les
performances de YUM comme, par exemple, yum-utils et yum-fastestmirror.
Saisissez
yum -y install yum-fastestmirror
et
yum -y install yum-utils
pour les installer. Ils vous aideront à utiliser YUM, par exemple en recherchant le miroir le plus rapide.
Utiliser YUM pour installer des logiciels est très simple. Il recherchera et installera toutes les dépendances nécessaires. Voici un exemple de ce qui apparaîtra sur votre console :
[root@orioleQ yum.repos.d]# yum -y install xine Loading "installonlyn" plugin Loading "kernel-module" plugin Loading "fedorakmod" plugin Setting up Install Process Setting up repositories dries [1/5] updates [2/5] core [3/5] freshrpms [4/5] extras [5/5] Reading repository metadata in from local files Parsing package install arguments Resolving Dependencies --> Populating transaction set with selected packages. Please wait. ---> Downloading header for xine to pack into transaction set. xine-0.99.4-4.fc5.rf.i386 100% |=========================| 30 kB 00:01 ---> Package xine.i386 0:0.99.4-4.fc5.rf set to be updated --> Running transaction check --> Processing Dependency: libaa.so.1 for package: xine --> Processing Dependency: libxine.so.1 for package: xine --> Processing Dependency: xine-lib >= 1.0.0 for package: xine --> Restarting Dependency Resolution with new changes. --> Populating transaction set with selected packages. Please wait. ---> Downloading header for xine-lib to pack into transaction set. xine-lib-1.1.1-2.fc5.rf.i 100% |=========================| 41 kB 00:03 ---> Package xine-lib.i386 0:1.1.1-2.fc5.rf set to be updated ---> Downloading header for aalib to pack into transaction set. ftp://fedora.bu.edu/fedora/extras/5/i386/aalib-1.4.0-0.rc5.7.i386.rpm: [Errno 4] IOError: [Errno ftp error] timed out Trying other mirror. aalib-1.4.0-0.rc5.7.i386. 100% |=========================| 5.9 kB 00:00 ---> Package aalib.i386 0:1.4.0-0.rc5.7 set to be updated --> Running transaction check --> Processing Dependency: libdvdcss for package: xine-lib --> Processing Dependency: libfame-0.9.so.1 for package: xine-lib --> Restarting Dependency Resolution with new changes. --> Populating transaction set with selected packages. Please wait. ---> Downloading header for libdvdcss to pack into transaction set. libdvdcss-1.2.9-2.fc5.rf. 100% |=========================| 5.0 kB 00:00 ---> Package libdvdcss.i386 0:1.2.9-2.fc5.rf set to be updated ---> Downloading header for libfame to pack into transaction set. libfame-0.9.1-10.fc5.i386 100% |=========================| 5.2 kB 00:00 ---> Package libfame.i386 0:0.9.1-10.fc5 set to be updated --> Running transaction check Dependencies Resolved ============================================================================= Package Arch Version Repository Size ============================================================================= Installing: xine i386 0.99.4-4.fc5.rf dries 2.3 M Installing for dependencies: aalib i386 1.4.0-0.rc5.7 extras 70 k libdvdcss i386 1.2.9-2.fc5.rf dries 44 k libfame i386 0.9.1-10.fc5 freshrpms 226 k xine-lib i386 1.1.1-2.fc5.rf dries 4.2 M Transaction Summary ============================================================================= Install 5 Package(s) Update 0 Package(s) Remove 0 Package(s) Total download size: 6.8 M Downloading Packages: (1/5): xine-lib-1.1.1-2.f 100% |=========================| 4.2 MB 02:49 (2/5): aalib-1.4.0-0.rc5. 100% |=========================| 70 kB 00:01 (3/5): libdvdcss-1.2.9-2. 100% |=========================| 44 kB 00:01 (4/5): libfame-0.9.1-10.f 100% |=========================| 226 kB 00:28 (5/5): xine-0.99.4-4.fc5. 100% |=========================| 2.3 MB 01:43 Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing: aalib ######################### [1/5] Installing: libfame ######################### [2/5] Installing: libdvdcss ######################### [3/5] Installing: xine-lib ######################### [4/5] Installing: xine ######################### [5/5] Installed: xine.i386 0:0.99.4-4.fc5.rf Dependency Installed: aalib.i386 0:1.4.0-0.rc5.7 libdvdcss.i386 0:1.2.9-2.fc5.rf libfame.i386 0:0.9.1-10.fc5 xine-lib.i386 0:1.1.1-2.fc5.rf Complete!
Comme nous le savons tous, APT (advanced package tools) est un excellent logiciel de gestion de paquets qui fut d'abord utilisé sur Debian et les distribution Linux basées sur Debian comme Ubuntu.
Sur mon poste de travail, j'ai installé Ubuntu 5.10 et Fedora Core 4 car parfois, je ne peux installer des logiciels que via apt-get et parfois uniquement via rpm. En effet, pas mal de logiciels commerciaux sont distribués sous le format RPM comme NI LabVIEW qui ne supportent pas officiellement les autres. Donc, lorsque je travaille, j'utilise Fedora Core 4. Mais la convivialité d'apt-get m'a séduit à tel point que j'utilise fréquemment Ubuntu. J'ai rêvé longtemps d'utiliser APT-GET sur Fedora Core.
Il y a de nombreux endroits où vous pouvez installer apt-get sur votre distribution RH/FC. Vous pouvez installer le programme apt-get d'abord via des paquets RPM. Un des endroits disponibles est http://apt.freshrpms.net/. Allez sur le répertoire correspondant à votre distribution et architecture CPU. Téléchargez tous les fichiers ayant le préfixe "apt-" et installez les via la commande rpm . Dans mon cas, j'ai utilisé les commandes suivantes pour installer le programme apt-get.
rpm -ivh http://ftp.freshrpms.net/pub/fedora/linux/extras/4/i386/apt-0.5.15cnc7-6.fc4.i386.rpm rpm -ivh http://ftp.freshrpms.net/pub/fedora/linux/extras/4/i386/apt-devel-0.5.15cnc7-6.fc4.i386.rpm
Ensuite, vous devrez configurer "apt". Avec l'aide d'un éditeur de texte, ouvrez le fichier /etc/apt/sources.list . La configuration de ce fichier n'est pas la même que celle que nous utilisons sous Debian. Il y a pas mal de sources apt pour Fedora Core sur Internet. Je vais vous montrez certains exemples.
Allez sur
http://svn.rpmforge.net/svn/branches/rpms/matthias/apt/.
Ouvrez le fichier sources.list correspondant à votre
architecture CPU. Copiez les lignes correspondant à votre distribution.
Décommentez-les et collez-les dans votre fichier
/etc/apt/sources.list. Par exemple, je vais ajouter cette ligne
à mon /etc/apt/sources.list
rpm http://ayo.freshrpms.net fedora/linux/2/i386 core updates freshrpms
Ouvrez
http://apt.kde-redhat.org/apt/sources.list.
Copiez les lignes et ajoutez-les à votre
/etc/apt/sources.list.
Ensuite, lancez la commande "apt-get update" pour récupérer la liste.
Vous pouvez également chercher les sources apt-get correspondantes à votre système sur Internet et les ajouter à votre /etc/apt/sources.list comme je vous l'ai décrit.
Ici, je veux vous présenter deux programmes permettant
d'utiliser YUM de manière graphique : kyum et Yumex.
Pour les installer, exécutez :
yum -y install yumex yum -y install kyum
Vu que leur utilisation est très simple (cliquer et appliquer), je ne montrerai que des captures d'écran. N'oubliez pas de vous connecter sur Internet lorsque vous utilisez de ces programmes.
Kyum:
YumEx:
Je n'ai pas envie de m'étendre sur le sujet vu qu'il n'est pas neuf. Pour certaines personnes, c'est la raison pour laquelle ils utilisent Debian. Vu que nous avons déjà présenté l'utilisation d'apt-get sur Fedora Core, il n'est pas nécessaire de faire plus amples commentaires sur le sujet.
Rappelez-vous de ne pas lancer plusieurs fois le programme apt en même temps ou vous observerez une erreur disant :
E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable) E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
Il y a beaucoup de sources apt-get dans le monde. Néanmoins, leur vitesse diffère. Certaines sont plus rapides et d'autres plus lentes. Vous devez juste les ajouter à votre /etc/apt/sources.list. La plupart des sources vous fourniront les informations à ajouter au fichier /etc/apt/sources.list.
APT-GET est un excellent outil pour obtenir des paquets qui était
utilisé initialement sous Debian. Mais si vous désirez voir les
paquets par catégories et vérifier leur état
d'installation, Synaptic est un bon choix. Lorsque vous désirez
installer un logiciel, faites un clic-droit sur la boîte carrée
à côté du nom de logiciel et choisissez "Mark for
installation (Sélectionner pour installation)". Sur les paquets
installés, vous pouvez choisir "Mark for reinstall (Sélectionner
pour réinstallation)", "Mark for removal (Sélectionner pour
suppression)" et "Mark for complete removal (Sélectionner pour
suppression complète)". Voici les copies d'écran.
Sélectionner pour installation :
Gérer les paquets installés :
J'ai créé une page Internet listant les logiciels EE et mathématiques que j'utilise dans mes recherches et mes études. N'hésitez pas à me contacter si vous avez une nouvelle idée concernant ce sujet.
Ces liens et les autres liens mentionnés dans cet article fonctionnaient au moment de sa rédaction (Juin 2006). Il se peut qu'ils ne fonctionnent plus.
Site Web maintenu par l´équipe d´édition LinuxFocus
© Sheng Bao "some rights reserved" see linuxfocus.org/license/ http://www.LinuxFocus.org |
Translation information:
|
2006-12-18, generated by lfparser version 2.54