Retourner au contenu. Retourner à la navigation

 

Module 1

by admin @ 23/02/2006

Chapitre 10 - Installation de programmes

1. Introduction

Beaucoup de linuxiens utilisent des distributions différentes de linux alors que celles-ci ne sont différentes que parce qu'elles possèdent une version personnalisée d'un même kernel ou noyau de base.

On pourrait ainsi se demander quels critères font que l'on choisisse telle distribution plutôt qu'une autre.

En réalité, tout informaticien, qu'il soit sous linux, Windows ou Mac va être à la perpétuelle recherche d'un large panel d'applications ou paquetages (packages) de tous genres (commerciaux ou libres (publiés sous license GPL:Gnu Public License)) et répondant aussi bien à ses besoins professionels (bureautique,gestion) que ludiques (multimédia, jeux).

Son choix ainsi va se tourner vers des systèmes où il pourra facilement obtenir ce qu'il veut.

Sur linux suivant les distributions, la gestion des paquetages peut être très souple et peut offrir beaucoup de possibilités, allant du téléchargement à l'installation automatique d'un paquetage par une simple commande. Nous allons donc voir trois modes de packaging propres aux distributions Debian, Gentoo et RedHat et une forme de gestion standard à toutes les distributions qui est celle dite par les sources.

2. Redhat

Les paquetages de la distribution Redhat sont présent sous deux formats. La première portant l'extension ".rpm" représente l'application binaire et la seconde portant l'extension "src.rpm" représente les sources (fichiers sources, documentation, fichiers d'installation et de configuration) utilisées généralement pour créer des ".rpm". Ces deux types de paquetages sont installés via la commande rpm.

2.1 Comment obtenir ces Paquetages ?

Redhat est une distribution commerciale destinée aux entreprises, elle est donc livrée avec un certain nombre de paquetages de base, testés et approuvés par la société Redhat.Toutes les applications autres que celles qui sont proposées doivent donc être téléchargées par l'utilisateur. Généralement le téléchargement se fait en allant directement sur le site du paquetage après une recherche sur un moteur de recherche (exemple : Google). La difficulté de ce genre de méthode est la gestion des dépendances. En effet lorsque vous installez un paquetage il très rare que ce dernier ne dépende d'aucun autre paquetage ou d'aucune librairie. Ce faisant, vous devrez récupérer l'ensemble de ces dépendances avant de lancer son installation. Bien souvent dans ces conditions, le découragement prend vite le dessus car la mise à jour continuelle des paquetages fait qu'un paquet A peut dépendre d'une certaine version d'un packet B et que cette version n'existe plus.

Cependant, l'arrivée de Fedora a changé l'esprit de la distribution Redhat qui est une distribution destinée au "Grand Public". Ainsi elle s'est munie d'une commande appelée "yum", basée sur le rpm et permettant de télécharger des applications avec l'ensemble de leurs dépendances sur des mirroirs dont le but principal est l'hébergement d'applications (exemple: ftp://freshrpms.net).

2.2 L'installation, désinstallation , récupération, mise à jour

Comme on l'a vu la commande rpm permet d'installer les fichiers ".rpm" et permet aussi de créer des fichiers rpm par les rpm sources (src.rpm) mais elle permet de faire beaucoup d'autres choses. Voici une liste des options les plus fréquemment utilisées de rpm :

2.2.1 Installation

-i foobar.rpm : permet d'installer un rpm

-R foobard.rpm : permet de lister les dépendances d'un fichier

2.2.2 Suppression

-e foobar.rpm : permet de supprimer un rpm

2.2.3 Informations sur les paquetages

L'option -q permet de récuperer des informations sur un ou plusieurs paquetages. Cependant cette option doit être combinée avec un autre caractère indiquant la nature de l'information.

Voici donc le listing des options les plus souvent rencontrées :


Option

Description

-qi paquet

Récupère les informations d'un paquetage déjà installé

-qa

Récupère les noms de l'ensemble des paquetages installés.

-ql paquet

Récupère la liste des fichiers d'un paquetage

-qf fichier

Permet de savoir à quel paquetage appartient ce fichier

-qpi rpm

affiche des informations sur les paquetages non installés

-V fichier

Vérifie un paquetage. Si le paquetage est bon il n'y aura aucune sortie sinon nous verrons apparaître des lettres indiquant les différents problèmes rencontrés. Voici donc ci-dessous un listing de ces différents caractères :

  • 5 : somme de contrôle md5

  • S : taille du fichier

  • L : lien symbolique

  • T : date de modification

  • D : fichier périphérique

  • U : l'utilisateur propriétaire du fichier

  • G : le groupe propriétaire du fichier

  • M : le mode du fichier

Note:

l'ensemble de ces options peuvent être combinées afin de former une requête précise, exemple : rpm -qpi paquetage.rpm et l'utilisation des globbings est autorisée.

2.3 Création d'un rpm à partir des sources rpm

Tout fichier rpm est un fichier destiné à une architecture précise, par exemple : samba-2.2.5.i586.rpm est destiné aux ordinateurs dotés d'un processeur de type i586. Cependant il est intéressant de compiler une application de manière à ce qu'elle soit optimisée pour notre processeur. Dans ce cas il est intéressant d'utiliser les RPM sources. Bien sûr, il existe des paquetages génériques c'est à dire qui correspondent à toute une famille de processeurs.

exemple : samba-2.2.5-i386.rpm correspond à la famille x86.

Pour compiler un paquetage RPM source, il faut passer l'option --rebuild à la commande RPM comme ci-dessous:

root@localhost # rpm --rebuild samba-2.2.5.src.rpm

Après avoir compilé, le paquetage crée se retrouvera dans le répertoire /usr/src/redhat/RPMS/ dans lequel existe d'autres répertoires portant le nom d'architecture comme i386,i586,etc... Tous les paquetages généralement crées de cette manière placent le fichier compilé dans le répertoire i386.

3. Debian

Les paquetages débian existent comme ceux de Redhat sous deux formats, un format binaire identifié par l'extension (.deb) et un format source indentifié lui par l'extension (.dsc). Les commandes généralement utilisées pour les installer sont celles présentées ci-dessous :

dpkg : commande dite de bas niveau, en ligne de commande, elle permet l'installation , la désinstallation et la gestion des informations des paquetages installés.

apt-get : cette commande est la commande la plus populaire du système débian.C'est une commande de haut niveau, servant d'interface à la commande dpkg. Elle permet le téléchargement et l'installation automatique des paquetages en gérant toutes les dépendances de celui-ci.

dselect : c'est une interface de la commande apt-get. Elle est exécutée lors de l'installation d'un système Débian.

3.1 Débian, un système "Grand Public"

La distribution débian est populaire grâce à la grande diversité des paquets qu'elle distribue. Elle fournit des paquets à la fois commerciaux et provenant du "monde libre", mais la majorité de ces paquets sont ceux empruntés au "monde libre". Ses logiciels proviennent de milliers voir de millions de personnes développant des applications pour Linux. Cependant on pourrait se demander si la provenance de ces paquets est sûre et surtout fiables pour être intégrés dans un système Débian. C'est d'ailleurs à cause de cette notion de fiabilité, que les Entreprises furent timides à donner un accord favorable à l'intégration de tels systèmes dit "Grand Public" au sein de leurs réseaux. Préférant bien souvent des solutions comme Microsoft ou Redhat, qui sont jugées plus fiables du fait qu'ils soient beaucoup plus commerciales. Mais aujourd'hui la barrière de l'a-priori s'est effondrée. Essayons de comprendre, Comment Debian est devenue une distribution digne de confiance malgré son image "Grand Public" bien affichée.

En fait ce qu'il est important de savoir c'est que chaque paquet provenant du monde libre est testé au maximum de ses possibilités, ceci permettant de lever tous les bugs possibles afin de les corriger et ainsi de les faire migrer vers le niveau de stabilité le plus sûr possible. Ces paquetages ainsi testés évoluent d'une version à une autre de Débian. En effet on distingue trois distributions de base chez Debian définie par le niveau de stabilité des logiciels, c'est à dire du niveau le moins stable à celui le plus stable.

Unstable ou "Sid" : cette distribution est la moins stable et la plus récente de Débian. Une fois certains bugs corrigés, les paquets migrent en testing. Elle est utile pour les utilisateurs expérimentés voulant bénéficier des dernières versions des applications.

Testing ou "Sarge" : cette distribution offre des paquetages stables mais dont l'ensemble des tests de sécurité n'ont pas été effectués. Elle est non-adapté pour une utilisation courante.

Stable ou "Woody" : cette distribution est la plus stable de Débian.Elle est utilisé pour les Serveurs et les utilisateurs normaux.

Les paquetages Debian, quelque soit la version utilisée, sont généralement téléchargés via la commande apt-get que nous avons vue plus haut. Ce qui fait la force d'apt-get est le fait qu'elle récupère les applications dans une arborescence bien définie appelée "pool" et présente sur différents mirroirs Debian.

Cette arborescence est répartie en 3 grandes familles de répertoire.

Main : contient uniquement des logiciels libres qui représentent la distribution officielle Débian.

Contrib : c'est la que sont stockés des logiciels libres mais dépendant de paquetages propriétaires.

Non free : c'est le répertoire des logiciels payant ou possédant des licences très restrictives.

Note:

vous verrez bien souvent dans les noms des répertoires ci-dessus, la dénomination Non-US. Celle-ci a pour but d'indiquer que les applications contenu dans ces répertoires ne pourront être téléchargés à partir des Etats-Unis.

Si vous voulez de plus amples renseignements concernant Debian allez sur le site http://www.debian.org

3.2 Installation, désinstallation, informations, mise à jour

3.2.1 Installation

L'installation, d'une manière générale, est faite à l'aide de la commande apt-get, mais la connaissance de la commande dpkg est quand même nécessaire. Ainsi vous sera présentée l'utilisation des deux commandes :

dpkg -i samba-2.2.5.deb
apt-get install samba
Note:

si vous ne connaissez pas le logiciel que vous voulez installer, il est possible d'avoir une description des différents logiciels pouvant faire ce que vous voulez. En faisant apt-cache search "mot_clé" et vous aurez un listing de tous les paquetages ayant soit dans leurs descriptions le mot clé recherché soit dans leurs noms. Bien sûr ce mot clé accepte les globbings.

3.2.2 Suppression

dpkg -r samba
ou
dpkg --purge samba
apt-get remove samba
ou
apt-get --purge remove samba

l'option --purge indique ici de supprimer à la fois le paquetage mais aussi l'ensemble des fichiers de configurations installés.

3.2.3 Information concernant les paquetages

L'ensemble des informations d'un paquetage installé sont mises en évidence grâce à la commande dpkg. Voici quelques options les plus souvent utilisées dans ce cas :

  • dpkg -l : permet d'afficher l'ensemble des paquetages installés

  • dpkg -L foobar : affiche l'ensemble des fichiers constituant un paquetage

  • dpkg -s foobar : affiche l'état d'un processus

  • dpkg -S fichier : permet de retrouver l'appartenance d'un fichier à un paquetage

De même que Redhat, il est possible d'afficher notament des informations sur les paquetages non installés, mais ce via la commande apt. L'option de la commande apt à utiliser fait appel à un cache ou est listé l'ensemble des fichiers à jour pouvant être téléchargés sur Debian.

la commande est :

apt-cache show feh

Permet de visualiser les informations d'un paquetage installé ou pas sur la machine.

afin de mettre à jour le cache une commande doit être utilisée qui est :

apt-get update.

3.2.4 Mise à jour des paquetages

apt-get distuprgrade
Note:

l'utilisation de la commande apt-get update est primordiale avant de faire la mise à jour des paquetages.

3.3 Création d'un deb à partir des sources dsc

Si vous êtes un féru de programmation et que vous vous intéressez d'étudier le code source ou éventuellement de faire des corrections sur du code bogué avoir les sources d'une application serait intéressant.

Pour cela apt mets à votre disposition des commandes permettant de télécharger les sources et des fichiers permettant la création d'un fichier .deb .

Pour télécharger un paquet source, vous devez utiliser la commande suivante :

apt-get source nomdupaquet

Cela va télécharger trois fichiers : un .orig.tar.gz, un .dsc et un .diff.gz. Dans le cas où les paquet sont faits spécialement pour Debian, le dernier de ceux-ci n'est pas téléchargé et le premier n'a généralement pas « orig » dans le nom.

Le fichier .dsc est utilisé par dpkg-source pour dépaqueter le paquet source dans le répertoire nomdupaquet-version. Avec chaque paquet source téléchargé, il y a un répertoire du nom de l'application qui contient les fichiers nécessaires pour la création d'un paquet .deb.

Pour créer le .deb allez à l'intérieur du répertoire créé pour le paquet après le téléchargement et tapez la commande suivante:

dpkg-buildpaquetage -rfakeroot -uc -b

4. Gentoo

Gentoo est une méta-distribution jeune née au début de l'année 2002. Elle en est à sa version 1.4 et est disponible sur beaucoup d'architectures dont : x86,PowerPc, Sparc et Sparc64, amd64, arm etc.

Gentoo a été dévéloppée par l'intégration d'idées provenant du monde BSD et Linux, mais en essayant d'automatiser un maximum de tâches. L'une des particularités de gentoo est qu'elle fait partie de la génération des distributions appelées "source-based".

Que veut dire "source-based" ?

Les paquetages fournis par gentoo ne sont pas des binaires que l'on peut installer comme ceux que l'on a vu avec Redhat et Debian mais sont sous forme de sources, contenant les instructions nécessaires à la compilation des paquetages devant être installés. Les fichiers sources sont des fichiers aux formats ".ebuild". Ces scripts ont notament été définis pour permettre la gestion des dépendances.

L'ensemble de ces paquetages fait partie d'une d'une arborescence appelée : Portage,qu'il est important de toujours mettre à jour.

La commande de base utilisée pour installer des paquetages Gentoo est la commande emerge, cette commande permet non seulement d'installer des paquetages mais aussi de supprimer , d'obtenir des informations sur un paquetage et aussi de mettre à jour l'ensemble du Portage.

4.1 Installation, désinstallation, informations, mise à jour

4.1.1 Installation

emerge samba
Note:

bien sûr de la même manière que Debian, si vous ne connaissez pas le nom exact d'un logiciel à télécharger vous pouvez faire une recherche en faisant : emerge search "mot_clé".

4.1.2 Suppression

emerge -C samba

4.1.3 Information

emerge -searchdesc samba

4.1.4 Mise à jour

emerge sync

5. Installation par Les sources

Les paquetages installés par les sources sont présent sous la forme de fichier tar compréssé soit en bzip2 soit en gzip2. Ces paquetages sont construits toujours de la même manière. On les appelle des "tarballs". Installer un tarball permet de bénéficier de la dernière version d'un logiciel.

La procédure d'installation d'un tarball suit toujours la même logique ainsi définie :

Prenons l'exemple d'un paquetage appelé foobar.tar.gz.

5.1 Téléchargement du tarball

luser@localhost $ wget http://www.foobar.com/Dowload/foobar.tar.gz

5.2 Décompression du tarball à l'aide de l'utilitaire tar

luser@localhost $ tar xzf foobar.tar.gz
Note:

il ne sera pas rare de trouver les tarballs sous le format tar.bz2, il faudra pour cela utiliser la commande tar avec les options "xjf"

5.3 Allez dans le répertoire crée par la décompréssion

luser@localhost $ cd foobar

5.4 Lancement du script shell configure

luser@localhost $ ./configure

Cette étape aura pour but de créer un fichier Makefile à l'aide de l'utilitaire "autoconf", qui permettra la compilation du logiciel. On peut passer des options à ce script, permettant par exemple de modifier le chemin d'installation, grâce à --prefix=<répertoire> (défaut : /usr/local).

5.5 compilation de l'application

luser@localhost $ make
Note:

vous devez avoir gcc d'installé

5.6 Installation du logiciel

root@localhost # make install
Par admin Dernière modification 22/03/2007 15:52
Navigation
Actualités
15/09/2008 Sortie de la version VLC 0.9.2
23/06/2008 Opération du libre à Nantes !
23/06/2008 OpenSuse 11
18/06/2008 Firefox 3 !
09/06/2008 Linux Pratique Essentiel
Plus d'actualités...
Articles
22/05/2008 Première approche de Qmail
19/05/2008 Test de la distribution Elive 1.0 Gem
14/05/2008 GNUPG introduction à la cryptographie et utilisation de GnuPG
21/02/2008 GNU / Screen
03/09/2007 The Linux File System Encryption API
More articles
Tips
28/04/2008 Mozilla Firefox : Google Talk et Facebook Chat
22/04/2008 Sed : Rechercher du texte entre deux chaines de caractères
04/04/2008 Gérer son(ses) écran(s) avec xrandr
26/03/2008 Tips sur l'historique de vos commandes
13/02/2008 Linux-Unix Cheat Sheets
More tips
Codes
09/04/2008 Chapitre 13 - Administration DNS et DHCP
09/04/2008 Chapitre 06 - Service web avec Apache
04/04/2008 Chapitre 09 - PureFTPd
04/04/2008 Chapitre 06 - Scripting Bash
01/04/2008 Chapitre 20 - Haute Disponibilité
More codes
Courses
13/09/2006 Module 3
23/02/2006 Module 2
23/02/2006 Module 1
More courses
Formation Linux

Supinfo Training Center has the first Linux Certification. The training is 13 days and allow you to pass the LPI 101 and 102.

more info
 
 
Vous êtes ici :
Cours Module 1 Chapitre 10 - Installation de programmes