Installation de logiciels

 

 Installation de logiciels

En linux, il y a deux façons d’installer des logiciels : à partir des sources ou à partir des paquets. À partir des sources :

Cette méthode consiste à télécharger le code source du programme à installer (généralement en langage C), puis à le configurer et le compiler pour l’installation comme telle. Étant donné que la compilation du programme se fait directement sur la machine où on l’installe, on peut généralement s’attendre à de meilleures performances; aussi, cette méthode est exactement la même peu importe la distribution linux. Par contre, elle peut devenir assez complexe car les dépendances doivent être résolues par l’administrateur du système.

À partir des paquets :

Il s’agit avec cette méthode de télécharger les fichiers précompilés des programmes à installer. C’est la méthode la plus simple – la plupart des gestionnaires de paquets s’occupent de résoudre les dépendances – cependant les gestionnaires de paquets sont nombreux et varient selon la distribution (yum pour RedHat, Fedora, CentOS; dpkg et apt-get pour Debian et Ubuntu; installpkg pour Slackware; yast et zypper pour Suse; etc.). Aussi, tous les programmes ne sont pas toujours disponibles sous forme de paquets pour toutes les distributions.

Installation de paquets logiciels

Les logiciels qui peuvent être installés sont sur des serveurs qu’on nomme dépôts logiciels. On appelle paquets logiciels les fichiers qui seront téléchargés et installés sur le système.

On utilise généralement un gestionnaire de paquets pour simplifier l’installation de paquets logiciels et l’accès aux dépôts; sur debian, ces gestionnaires de paquets sont dpkg et apt-get.

Il existe des dizaines distributions linux; pour chacune d’entre elles, plusieurs versions; et des centaines de dépôts où on peut télécharger les logiciels compatibles avec chaque version de chaque distribution. Il faut donc donner au gestionnaire de paquets des indications sur le dépôt qu’il doit contacter et sur la version de l’OS pour lequel il doit rechercher des logiciels. Ces informations sont définies dans le fichier /etc/apt/sources.list, qui contient des informations similaires à celles-ci:

deb http://debian.mirror.iweb.ca/debian/ wheezy main deb-src http://debian.mirror.iweb.ca/debian/ wheezy main deb http://security.debian.org/ wheezy/updates main

deb-src http://security.debian.org/ wheezy/updates main

Chaque ligne contient un dépôt à contacter pour une certaine catégorie de paquet. La syntaxe est la suivante:

TYPE URI VERSION SECTIONS

TYPE

Désigne le type de paquet.

deb : programmes exécutables et instructions de configuration

deb-src : code source des logiciels

URI

Chemin (local ou distant) vers le dépôt.

VERSION

Réfère au nom de la version de votre OS. Pour debian, on peut avoir wheezy, squeeze, sid, jessie… Il y a trois possibilités :

wheezy : les paquets logiciels standard

wheezy-updates : les mises-à-jour des paquets officiels

wheezy-backports : les logiciels introduits dans une version plus ancienne que

« wheezy» mais qui ont été recompilés pour « wheezy»

SECTIONS

La catégorie de logiciels qu’on veut pouvoir télécharger. Dans debian, il y en a trois :

main : logiciels faisant officiellement partie de la distribution debian contrib : logiciels libres, mais qui ne font pas officiellement partie de debian non-free : logiciels non-libres développés par des tiers

apt-get

L’utilitaire de base pour l’installation de paquets est apt-get. Plusieurs opérations (mises à jour, installation, suppression, etc.) sont disponibles. Ce programme permet en outre de détecter les dépendances logicielles et de télécharger les paquets correspondants au besoin.

La syntaxe est la suivante :

apt-get OPÉRATION ARGUMENT(S)

Principales opérations

install Installe le ou les paquets spécifiés

update Met à jour la base de données locale (sans arguments)

remove Supprime le ou les paquets spécifiés, mais ne supprime pas les fichiers de configuration reliés

purge Supprime le ou les paquets spécifiés et les fichiers de configuration reliés

autoremove Supprime les paquets pour lesquels il n’existe pas de dépendance logicielle sur le système

Par exemple, pour mettre à jour la base de données locale des paquets disponibles :

[email protected]:~# apt-get update

Atteint http://debian.mirror.iweb.ca wheezy Release.gpg Atteint http://debian.mirror.iweb.ca wheezy-updates Release.gpg (…)

Atteint http://security.debian.org wheezy/updates/main Translation-en Lecture des listes de paquets… Fait

Pour installer le programme vsftpd :

[email protected]:~# apt-get install vsftpd

aptitude

Le programme apt-get ne comprend cependant aucune fonctionnalité de recherche ou de visualisation des informations d’un paquet. Le programme aptitude permet de faire ce genre de recherche. Par exemple, lorsqu’on désire faire une recherche basée sur le nom du paquet, on lancera une commande semblable à celle-ci :

  • module AOLServer 4 pour fournir des hash SHA1
  • redémarre automatiquement les sessions et tun
  • administer multiple ssh or rsh shells simulta

p aolserver4-nssha1

p autossh

p clusterssh

[email protected]:~# aptitude search ssh

Ici, tous les paquets dont le nom contient la chaîne de caractères « ssh » sont affichés. Le « p » au début de la ligne signifie que le paquet n’est pas installé; les valeurs possibles sont les suivantes :

p Le paquet n’est pas installé

i Le paquet est installé

c Le paquet n’est pas installé mais des fichiers de configuration sont présents

v Le paquet est virtuel, c’est-à-dire qu’il n’est pas lui-même installé mais qu’un paquet aux fonctionnalités identiques est installé

Pour afficher des informations sur un paquet spécifique on utilisera l’opération show, comme suit :

[email protected]:~# aptitude show apache2

Ces informations comprennent la version disponible, l’état, une description et les dépendances.

dpkg et dpkg-reconfigure

Le programme dpkg dispose lui aussi de certaines fonctionnalités qui lui sont propres, absentes de apt-get ou aptitude; à la base, il n’est pas destiné à l’utilisateur cependant : il a été conçu pour être appelé par d’autres programmes ou des scripts. Il ne peut être utilisé que pour des paquets déjà installés ou téléchargés.

On utilise dpkg-reconfigure pour relancer le script de configuration spécifique à certains programmes; par exemple, pour relancer la configuration du clavier (géré par le paquet keyboard-configuration) :

[email protected]:~# dpkg-reconfigure keyboard-configuration

Parfois certains développeurs logiciels distribuent leur programme sous forme de paquetage mais l’offrent directement à télécharger, sans les ajouter à des dépôts logiciels existants. Dans ce cas, il faut faire une installation d’un paquet préalablement téléchargé (avec l’option -i), comme suit :