1. Introduction 2. Les Paquets Linux - Le site de Lydia Burri

Transcription

1. Introduction 2. Les Paquets Linux - Le site de Lydia Burri
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX
INSTALLATION DE LOGICIELS SOUS LINUX UBUNTU
1. Introduction
L'installation de logiciels sous les systèmes d'exploitation Linux, comme Ubuntu, est
souvent très simple quand ceux-ci, reconnus comme stables et fiables par l'équipe
d'Ubuntu , sont référencés dans la Logithèque.
L'installation de logiciels développés par des utilisateurs ou des équipes de programmeurs
indépendants s'avère souvent plus complexe.
La plupart des actions ou commandes décrites ci-dessous nécessitent d'être logué en super
utilisateur.
2. Les Paquets Linux
2.1.
Définition d'un paquet
On appelle paquet, ou paquetage, une archive (fichier compressé) comprenant les fichiers
informatiques, les informations et les procédures nécessaires à l'installation d'un logiciel
sur un système d'exploitation Linux.
Un paquet est composé de :
 fichiers exécutables ou sources ;
 fichiers de configuration ;
 fichiers de documentation ;
 dépendances logicielles ;
 scripts de pré/post installation ;
 scripts de pré/post désinstallation ;
Un paquet peut se trouver sous forme de :
 source = fichier qui contient l'écriture ( code ) d'un programme, souvent en langage
C, non compréhensible par le matériel de l'ordinateur. Ce fichier doit donc être
compilé pour être transformé en binaire. Pour cela, on utilise la commande make.
 binaires = fichiers écrits en "langage machine", directement exécutables par
l'ordinateur.
Un gestionnaire de paquets est un logiciel automatisant le processus d'installation,
désinstallation, et de mise à jour de paquets et donc de logiciels. Apt est un gestionnaire
de paquets.
 1 
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX

Exemple de paquets contenus sur un serveur de téléchargement :
 Les paquets .tar.xz et .tar.gz sont des paquets compressés. Ce sont des archives
contenant les fichiers sources de l'application.
Isolés, les paquets .tar.xz et .tar.gz se décompressent avec l'outil tar (tape
archive).
 Le paquet .dsc est un paquet qui contient la description des paquets sources
précédents. Il est utile pour les compiler et créer le paquet binaire. Isolé, un paquet
.dsc peut être utilisé par l'outil pbuilder pour construire le paquet binaire.
 Le paquet .deb est un paquet binaire, non compressé pour la distribution Debian ou
Ubuntu. Isolé, un paquet .deb s'installe avec le gestionnaire de paquet dpkg.
2.2.
Pour aller plus loin
Notions de compilation d'un noyau Linux :
http://casteyde.christian.free.fr/system/linux/guide/online/c6934.html
Structure d'un paquet source :
https://debian-handbook.info/browse/fr-FR/stable/sect.source-packagestructure.html
3. Sources de téléchargement de paquets
Les sources de téléchargements de paquets pour Linux sont nombreuses.
3.1.
Le fichier sources.list
Les sources dites de confiance sont indiqués dans le fichier /etc/apt/sources.list, sous
forme d'une succession de lignes qui donnent toutes les informations nécessaires au
gestionnaire de paquets apt pour consulter le contenu des dépôts.
On appelle ces lignes des lignes apt. Elles commencent par la mention deb ou deb-src.
 2 
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX
Par défaut, l'équipe d'Ubuntu propose une sélection de sources, mais il est possible
d'ajouter/supprimer des lignes apt dans le fichier sources.list, en éditant le fichier à
l'aide de la commande nano.
Extrait d'un fichier sources.list :
eleve@srvIPTV:~$ sudo nano /etc/apt/sources.list
...
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade
# to newer versions of the distribution.
deb http://fr.archive.ubuntu.com/ubuntu/ trusty main restricted
deb-src http://fr.archive.ubuntu.com/ubuntu/ trusty main restricted
...
Une ligne apt se compose de 4 parties :
deb

http://fr.archive.ubuntu.com/ubuntu/

trusty

main restricted

 deb désigne des paquets d'installation directement exécutables.
deb-src désigne des paquets sources, uniquement utiles si vous souhaitez compiler
un programme.
 Adresse
du
serveur
où
sont
stockés
http://fr.archive.ubuntu.com/ubuntu/

les
paquets,
ex
Extrait de contenu d'un serveur :
 Version d'Ubuntu du PC, ici : trusty
 Sections du dépôt auxquelles le PC pourra accéder :
o main = logiciels libres maintenus par l'équipe d'Ubuntu
o universe = logiciels libres maintenus par les utilisateurs d'Ubuntu
 3 
:
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX
o restricted = logiciels non libres maintenus par l'équipe d'Ubuntu
o multiverse = logiciels non libres maintenus par les utilisateurs d'Ubuntu
Les lignes commençant par # sont des commentaires.
3.2.
Les dépôts ppa
Les Personal Package Archives sont des dépôts de paquets logiciels, situés sur la
plateforme LaunchPad (https://launchpad.net/). Les développeurs peuvent y stocker
gratuitement leurs logiciels sous forme de code source afin de les proposer aux
utilisateurs de la distribution Debian et ses dérivées.
Le service LaunchPad génère, à partir des codes sources déposés par les développeurs,
des paquets .deb, exécutables, que les utilisateurs de Debian pourront installer avec leur
gestionnaire de paquets logiciels apt.
3.2.1.
Ajout d'un dépôt ppa
L'utilisation de la commande add-apt-repository ppa: permet de créer un fichier dans le
répertoire /etc/apt/sources.list.d. Ce répertoire est prévu pour contenir une liste de
dépôts annexes, et est aussi utilisé par le gestionnaire de paquets apt pour installer,
mettre à jour des logiciels.
 Exemple :
Ajout du dépôt flumotion-dev/flumotion :
add-apt-repository ppa:flumotion-dev/flumotion
Il faut ensuite mettre à jour la liste des paquets du dépôt :
apt-get update
3.2.2.
Listage des dépôts ppa ajoutés
Pour connaître la liste des dépôts ppa ajoutés au fichier /etc/apt/sources.list.d :
ls /etc/apt/sources.list.d/
Le terminal affiche :
flumotion-dev-flumotion-trusty.list
Pour connaître l'emplacement d'un dépôt ppa, il faut afficher le contenu du fichier:
cd /etc/apt/sources.list.d
cat flumotion-dev-flumotion-trusty.list
Le terminal affiche :
deb http://ppa.launchpad.net/flumotion-dev/flumotion/ubuntu trusty main
# deb-src http://ppa.launchpad.net/flumotion-dev/flumotion/ubuntu trusty main
 4 
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX
3.2.3.
Pour aller plus loin
Documentation française d'Ubuntu
http://doc.ubuntu-fr.org/ppa
3.3.
3.3.1.
Les dépôts git
Qu'est-ce-que git?
Git est un DVCS Distributed Version Control
System (Système de Gestion de Version
distribuée).
La gestion de version est un système qui
enregistre l'évolution d'un fichier ou d'un
ensemble de fichiers au cours du temps de manière
à ce qu'on puisse rappeler une version antérieure
d'un fichier à tout moment.
Avec un DVSC, les versions sont stockées sur un
serveur et à chaque fois qu'un client extrait la
dernière version, il duplique le dépôt entier.
Cette redondance de sauvegarde évite la perte de
données en cas de panne du serveur.
schéma de https://git-scm.com/book/fr/v1
3.3.2.
Téléchargement de dépôts git
Git ne permet pas de mettre à jour la liste de dépôts de confiance
(/etc/apt/sources.list) ou la liste de dépôts annexes (/etc/apt/sources.list.d)
du PC. Il permet de charger un répertoire contenant par exemple les fichiers
sources d'une application. Ces fichiers devront être, par la suite,
décompressés puis compilés.
Commande git clone. exemple :
git clone git://github.com/Glandos/tvheadend.git
Ceci crée un répertoire nommé tvheadend, récupère toutes les données (fichiers) du dépot
et les place dans ce répertoire.
Pour cloner le dépôt dans un répertoire nommé différemment, on utilise une option
supplémentaire :
 5 
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX
git clone git://github.com/Glandos/tvheadend.git /etc/IPTV
Le répertoire cible est maintenant /etc/IPTV.
Git dispose de différents protocoles de transfert :
protocole git : git clone git://chemin_projet.git
(utilise le port 9418)
protocole http ou https : git clone http(s)://chemin_projet.git
protocole ssh : git clone utilisateur@serveur:/chemin_projet.git
ou git clone ssh://utilisateur@serveur/chemin_projet.git
3.3.3.
Pour aller plus loin
Antisèche des options de la commande git :
http://ndpsoftware.com/git-cheatsheet.html
Documentation complète de git :
https://git-scm.com/book/fr/v1
4. Installation de binaires
4.1.
Apt
Pour Debian et les distributions basées sur Debian, par exemple Ubuntu, le gestionnaire de
paquets apt permet :
 d'installer ou supprimer des paquets (logiciels)
 mettre à jour des paquets ou votre système.
4.1.1.
Mise à jour des dépôts
apt-get update
Cette commande se fait souvent après l'ajout d'une ligne apt dans le fichier
/etc/apt/sources.list, ou l'ajout d'un fichier dans le répertoire /etc/apt/sources.list.d.
Elle met à jour la liste des fichiers disponibles dans les dépôts apt.
4.1.2.
Mise à jour des paquets déjà installés
apt-get upgrade
4.1.3.
Installation d'un paquet
Pour installer par exemple le logiciel tvheadend depuis les sources de confiance déclarées
dans le fichier /etc/apt/sources.list :
apt-get install tvheadend
 6 
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX
4.1.4.
Désinstallation d'un paquet
apt-get remove tvheadend
Pour supprimer aussi les fichiers de configuration de l'application :
apt-get remove tvheadend --purge
4.2.
Aptitude
Aptitude est un gestionnaire de paquets basé sur l'infrastructure apt. Il présente des
fonctionnalités équivalentes à apt-get, c'est-à-dire que l'on peut installer, supprimer et
mettre à jour les applications avec Aptitude.
 exemples :
o aptitude update = mise à jour de la liste des paquets disponibles
o aptitude safe-upgrade = téléchargement et installation des nouvelles versions
des paquets installés
o aptitude install tvheadend = installation du logiciel tvheadend
o aptitude remove tvheadend = désinstallation du logiciel tvheadend
4.3.
Liens Internet
Sur Internet, on trouve des liens de type :
 exemple :
Un clic sur le lien lance La logithèque Ubuntu :
Il suffit ensuite de cliquer sur Installer.
4.4.
Cliquer sur :
Logithèque
dans la barre de lancement d'Ubuntu.
 7 
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX
Puis rechercher le logiciel et cliquer sur Installer :
5. Installation de logiciels téléchargés sous forme de fichiers
sources
5.1.
Décompression du paquet
Pour décompresser une archive qui est au format tar.gz il faut utiliser la commande tar.
Par exemple, pour décompresser l'archive tvheadend-4.0.4.tar.gz :
tar xzvf tvheadend-4.0.4.tar.gz
Ici l’archive se décompressera dans le répertoire où l’on se situe.
La signification des options est la suivante :

x : extraire une archive

z : permet de décompresser le “gzip“

v : mode verbeux , permet d’afficher dans le détail les fichiers décompressés

f : indication de la donnée à décompresser
On peut aussi ajouter l’option -C si on souhaite décompresser l’archive dans un autre
répertoire. Par exemple, si on souhaite décompresser l’archive tvheadend-4.0.4.tar.gz
dans /etc/IPTV :
tar xzvf tvheadend-4.0.4.tar.gz -C /etc/IPTV
5.2.
Configuration du programme pour l'environnement courant
On se place dans le répertoire d'installation où se situent les fichiers sources et on appelle
le script configure :
./configure
Cette Commande va vérifier que toutes les dépendances sont présentes, puis configurer et
écrire un fichier Makefile qui contiendra les ordres de compilation.
 8 
SYNTHESE INSTALLATION DE LOGICIELS SOUS LINUX
Pour chaque erreur donnée il faut installer la dépendance manquante. Il s'agit souvent
d'une bibliothèque que l'on peut trouver ainsi :
apt-cache search lib bibliotheque_manquante dev



lib = c'est une bibliothèque
bibliotheque_manquante = ce qu'on cherche
dev : on cherche la version pour le développement (avec les en-têtes pour permettre
la compilation)
A la fin de l'exécution réussie du script configure , le terminal renvoie l'emplacement où
vont se situer les fichiers binaires :
...
Final Binary:
/etc/IPTV/tvheadend-4.0.4/build.linux/tvheadend
Tvheadend Data Directory:
/usr/local/share/tvheadend
...
5.3.
Compilation des fichiers sources
Toujours placé dans le répertoire d'installation où se situent les fichiers sources, on
appelle la commande make. celle-ci va compiler le paquet source, de façon plus ou moins
longue selon la taille du projet.
Le processus peut s'arrêter en cas de problème de compilation.
make
5.4.
Installation du programme
Le programme est installé par la commande :
make install
5.5.
Résumé des étapes
L'installation de paquets téléchargés sous forme de fichiers sources comporte 4 étapes :
 Décompression : tar xzvf
 Configuration : ./configure
 Compilation : make
 Installation : make install
 9 