Concerne uniquement les distributions Linux basées sur Debian.
Des programmes livrés sous forme de paquets
Sous Ubuntu, on n'a pas de programmes d'installation. On a ce qu'on appelle des
paquets.
Un paquet est une sorte de dossier zippé qui contient tous les fichiers du programme. Il se présente sous la forme d'un fichier .deb, en reférence à DEBian. Il contient toutes les instructions nécessaires pour installer le programme.
Par rapport à .exe de Windows, il y a 2 différences notables :
- Il y a une gestion des dépendances du programme.
- Tous les .deb sont rassemblés au même endroit sur un même serveur appelé dépôt (repository).
Les dépendances, un cauchemar ?
Il est très rare qu'un programme puisse fonctionner seul sous Linux. Très souvent, il utilise d'autres programmes, ou d'autres "bouts de programmes" appelés
bibliothèques. On dit que les programmes dépendent d'autres programmes pour fonctionner : ils ont des
dépendances. Et parfois, ces dépendances ont elles-mêmes des dépendances
Heureusement, le système de paquets Debian est intelligent. Chaque paquet indique de quels autres paquets il dépend. Cela permet au système d'aller récupérer les dépendances manquantes automatiquement si besoin est.
On n'a qu'à dire "Je veux installer tel programme", et le système ira chercher toutes les dépendances manquantes tout seul.
Les dépôts
Tous les paquets sont regroupés au sein d'un même endroit appelé dépôt. Il s'agit d'un serveur qui propose tous les paquets qui existent (ou presque), ce qui simplifie grandement vos recherches.
La notion de dépôt
Il existe en fait un grand nombre de dépôts qui sont la copie les uns des autres.
Certains dépôts spéciaux proposent toutefois des programmes que l'on ne trouve nulle part ailleurs. Il est cependant rare que l'on ait besoin de se servir dans ces dépôts spéciaux.
Par défaut en France, Ubuntu est configuré pour travailler avec le dépôt
fr.archive.ubuntu.com
. Ce n'est pas toujours une bonne idée de garder le dépôt par défaut, car en cas de nouvelle version d'Ubuntu et de ses logiciels, celui-ci est surchargé et devient alors très lent.
Utiliser le dépôt de Free si on est chez Free.
Comment changer de dépôt ?
Gérer ses dépôts
Par défaut, quand on installe Ubuntu, celui-ci utilise les dépôts officiels d'Ubuntu. Seulement, ces serveurs risquent d'être souvent encombrés.
La liste des dépôts que l'ordinateur utilise est stockée dans un fichier.
Pour éditer ce fichier, il faut utiliser un éditeur de texte comme nano.
Le fichier à ouvrir qui contient la liste des dépôts que l'on utilise est :
/etc/apt/sources.list
Ce fichier ne peut être modifié que par root. Pour cela, 2 possibilités. On fait un sudo juste avant :
Code : Console
sudo nano /etc/apt/sources.list
… et on modifie le fichier en tant que root.
Code : Autre
1 | # See <lien url="http://help.ubuntu.com/community/UpgradeNotes">http://help… |
2 | # newer versions of the distribution. |
3 | |
4 | deb <lien url="http://fr.archive.ubuntu.com/ubuntu/">http://fr.archive.ubuntu.com/… |
… |
38 | deb <lien url="http://security.ubuntu.com/ubuntu">http://security.ubuntu.com/ubuntu</lien>… |
39 | deb-src <lien url="http://security.ubuntu.com/ubuntu">http://security.ubuntu.com/ubuntu… |
40 | deb <lien url="http://security.ubuntu.com/ubuntu">http://security.ubuntu.com/ubuntu… |
… |
Les lignes commençant par un # sont des lignes de commentaires. Elles seront ignorées.
Normalement, chaque ligne du fichier commence par une de ces 2 directives :
- deb : pour télécharger la version compilée (binaire) des programmes. C'est ce qu'on voudra faire dans la plupart des cas, car c'est la version "prête à l'emploi".
- deb-src : permet de récupérer le code source du programme. Généralement, vous n'en a pas besoin, sauf si on veut voir la source d'un programme (c'est l'avantage du logiciel libre de pouvoir voir la source des programmes).
Voici une ligne "type" :
deb
http://fr.archive.ubuntu.com/ubuntu/
hardy universe
En premier, on a l'adresse, ici : http://fr.archive.ubuntu.com/ubuntu/ qui est le dépôt par défaut français.
Ensuite, le nom de la version. Ici "hardy".
Enfin, le dernier paramètre correspondent à la "section" du dépôt.
Ce qu'il faudrait faire, c'est remplacer toutes les adresses par celle du dépôt que l'on souhaite utiliser.
Utiliser l'outil graphique
Le plus simple est de passer par l'outil graphique fourni par Ubuntu. L'outil en question dépend de votre Ubuntu. Si on a :
- Ubuntu : allez dans Système > Administration > Sources de logiciels
- KUbuntu : allez dans Menu K > Système > Gestionnaire Adept > Adept > Gérer les dépôts
- XUbuntu : allez dans Applications > Système > Sources de mises à jour
Dans la fenêtre qui s'ouvre, noter la liste déroulante "Télécharger depuis : Server for France".
Cette liste vous offre le choix pour le moment entre "Main server" (le serveur américain officiel) et le serveur français. Cliquer sur "Autre…".
Cette fenêtre recense les dépôts les plus connus regroupés par pays. Certains sont fournis par des universités (u-picardie.fr), d'autres par des FAI (Free, Oleane pour Orange…).
Pour savoir lequel est le plus rapide, cliquer sur le bouton "Sélectionne le meilleur serveur (le plus proche)". Une fenêtre va s'ouvrir et tester la vitesse de tous les serveurs.
Le serveur qui sera sélectionné à la fin sera le serveur que le logiciel aura détecté comme étant le plus rapide pour nous. Cliquer sur "Choisir un serveur" pour valider.
Ensuite, le logiciel fera remarquer que notre cache n'est pas à jour. En effet, pour des raisons de performances, Ubuntu avait téléchargé la liste des paquets proposés par l'ancien serveur. Comme on a changé de serveur, il se peut que la liste des paquets change. Il faut récupérer la liste des paquets proposés par le nouveau serveur et la mettre en cache.
Cliquer sur "Actualiser" pour actualiser la liste des logiciels disponibles.
L'outil graphique est plus pratique pour mettre à jour notre fichier sources.list.
Les outils de gestion des paquets
Changer de dépôt n'est pas obligatoire, on peut se contenter du dépôt par défaut.
Sous Ubuntu, on utilise un programme qui gère les paquets pour nous. Il existe des programmes graphiques, comme Synaptic (utilisé par Ubuntu).
Ce programme est assez simple d'utilisation : on coche les programmes qu'on veut installer, et on décoche ceux qu'on veut désinstaller. Une fois que c'est fait, cliquer sur "Appliquer" pour télécharger tous les programmes cochés et pour désinstaller tous ceux qu'on a décoché.
Autrement, il y a les programmes console.
Les 2 programmes console les plus connus de gestion des paquets sont :
- apt-get auquel on va s'intéresser.
- aptitude
On doit généralement suivre 3 étapes pour télécharger un paquet :
- apt-get update (optionnel) : pour mettre notre cache à jour si ce n'est pas déjà fait.
- apt-cache search monpaquet (optionnel) : pour rechercher le paquet que l'on veut télécharger si on ne connaît pas son nom exact.
- apt-get install monpaquet : pour télécharger et installer notre paquet.
apt-get update : mettre à jour le cache des paquets
Commençons par la mise à jour du cache des paquets (apt-get update).
Comme on l'a vu, il est nécessaire de mettre à jour son cache des paquets. Cela correspond à télécharger la nouvelle liste des paquets proposés par le dépôt.
Toutefois, il n'est pas nécessaire de mettre à jour son cache à chaque fois que l'on veut télécharger un paquet.
Il y a 2 cas où on a besoin de mettre à jour votre cache :
- Quand on change / ajoute un dépôt à sa liste de dépôts.
- Si on n'a pas mis à jour son cache depuis un moment (quelques semaines).
Pour mettre à jour son cache, taper dans la console (
en tant que root) :
Code : Console
apt-get update
 |
Penser à rajouter un sudo si on n'est pas déjà root. |
Après avoir tapé cette commande, on va automatiquement télécharger la dernière liste des paquets proposés par nos dépôts :
Code : Console
root@alain-pc01:~# apt-get update
Réception de : 1 <lien url="http://wine.budgetdedicated.com">http://wine.budgetdedicated.com</lien> hardy Release.gpg [191B]
Ign <lien url="http://wine.budgetdedicated.com">http://wine.budgetdedicated.com</lien> hardy/main Translation-fr
Atteint <lien url="http://wine.budgetdedicated.com">http://wine.budgetdedicated.com</lien> hardy Release
Atteint <lien url="ftp://ftp.free.fr">ftp://ftp.free.fr</lien> hardy Release.gpg
…
Réception de : 16 <lien url="ftp://ftp.free.fr">ftp://ftp.free.fr</lien> hardy-security/universe Sources [11,8kB]
Réception de : 17 <lien url="ftp://ftp.free.fr">ftp://ftp.free.fr</lien> hardy-security/multiverse Packages [5395B]
Réception de : 18 <lien url="ftp://ftp.free.fr">ftp://ftp.free.fr</lien> hardy-security/multiverse Sources [1042B]
382ko réceptionnés en 7s (50,1ko/s)
Lecture des listes de paquets… Fait
On n'a pas besoin d'exécuter cette commande à chaque fois qu'on veut installer un paquet, mais seulement de temps en temps pour être sûr d'avoir la liste la plus à jour.
apt-cache search : rechercher un paquet
A moins de connaitre déjà le nom exact du paquet qu'on veut, il va falloir faire une petite recherche.
On utilise pour cela la commande suivante :
Code : Console
apt-cache search notrerecherche
Cette commande effectue une recherche de paquet dans notre cache. Cela évite d'avoir à aller sur internet pour faire la recherche, ce qui serait lent.
Exemple, je recherche un jeu de casse-briques (breakout en anglais). Je fais la recherche suivante :
Code : Console
root@alain-pc01:~# apt-cache search breakout
briquolo - Fast paced 3d Breakout
briquolo-data - Fast paced 3d Breakout data files
circuslinux - The clowns are trying to pop balloons to score points!
circuslinux-data - data files for circuslinux
gnome-breakout - Clone of the classic game Breakout, written for GNOME
lbreakout2 - A ball-and-paddle game with nice graphics
lbreakout2-data - A ball-and-paddle game with nice graphics (DATA FILES)
libfreebob0 - FreeBoB API
libfreebob0-dev - FreeBoB API - development files
tecnoballz - breaking block game ported from the Amiga platform
La commande apt-cache search breakout a listé tous les paquets qui avaient un rapport avec les casse-briques.
A gauche on a le nom du paquet, et à droite une courte description.
 |
Si on veut une plus ample description d'un paquet, utiliser apt-cache show nomdupaquet. Exemple :
apt-cache show lbreakout2 |
apt-get install : installer un paquet
On va donc télécharger lbreakout2. Ça se fait très simplement (
en tant que root toujours, rajouter un sudo devant la commande si on n'est pas déjà root) :
Code : Console
apt-get install lbreakout2
 |
Astuce : on peut installer plusieurs paquets d'un coup en les listant un à un :
apt-get install paquet1 paquet2 paquet3 |
Essayons donc d'installer lbreakout2 :
Code : Console
root@alain-pc01:~# apt-get install lbreakout2
Lecture des listes de paquets… Fait
Construction de l'arbre des dépendances
Lecture de l'information d'état… Fait
Les paquets supplémentaires suivants seront installés :
…
Souhaitez-vous continuer [O/n] ? O
…
Paramétrage de libsdl-mixer1.2 (1.2.6-1.1build1) …
Paramétrage de lbreakout2-data (2.5.2-2.1ubuntu1) …
Paramétrage de lbreakout2 (2.5.2-2.1ubuntu1) …
 |
Si on obtient le message d'erreur suivant :
E: Impossible d'ouvrir le fichier verrou /var/lib/dpkg/lock - open (13 Permission non accordée)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
… c'est que vous n'avez pas exécuté la commande en tant que root. Penser à passer root avant d'exécuter cette commande, en utilisant sudo. |
Comme on peut le voir, au début apt-get a vérifié si le paquet existait et les dépendances dont il avait besoin. Il se trouve que lbreakout2 avait besoin de dépendances qu'on n'a pas, comme libsdlmixer-1.2 par exemple.
C'est pour cela qu'on nous a demandé confirmation au milieu :
Souhaitez-vous continuer [O/n] ?
Répondre par un "O" majuscule (comme "Oui") et taper Entrée pour que l'installation se poursuive.
C'est alors que la magie d'apt-get opère : le programme va aller télécharger tout seul le paquet sur le dépôt, ainsi que toutes les dépendances dont il a besoin et que nous n'avons pas.
Puis, il "dépaquète" les fichiers qui étaient contenus à l'intérieur du paquet, les installe et effectue les paramétrages tout seul.
apt-get installe tout ce qu'il faut tout seul, dans les bons répertoires, et crée même le raccourci pour lancer le jeu dans la section "Jeux" !
Le menu des applications d'Ubuntu comporte désormais une section Jeux (qu'il a créé si elle n'existait pas) et possède un raccourci vers le jeu que nous venons d'installer.
apt-get autoremove : supprimer un paquet
Pour désinstaller un paquet, on peut utiliser la commande apt-get remove :
Code : Console
apt-get remove lbreakout2
Le paquet sera alors désinstallé de l'ordinateur.
Toutefois, cela ne supprime pas les dépendances du paquet devenues inutiles. Pour demander à apt-get de supprimer aussi les dépendances inutiles, on utilise autoremove :
Code : Console
apt-get autoremove lbreakout2
Faire un autoremove, pour être certain de libérer un maximum d'espace disque.
Cela donne :
Code : Console
root@alain-pc01:~# apt-get autoremove lbreakout2
Lecture des listes de paquets… Fait
Construction de l'arbre des dépendances
Lecture de l'information d'état… Fait
Les paquets suivants ont été automatiquement installés mais ne sont plus nécessaires :
libsdl-mixer1.2 libsmpeg0
Les paquets suivants seront ENLEVÉS :
lbreakout2 lbreakout2-data libsdl-mixer1.2 libsmpeg0
0 mis à jour, 0 nouvellement installés, 4 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 0o dans les archives.
Après dépaquetage, 5358ko d'espace disque seront libérés.
Souhaitez-vous continuer [O/n] ?
apt-get analyse le paquet, vérifie les dépendances qu'il peut supprimer sans risque (c'est-à-dire les dépendances qui ne sont plus utilisées par aucun autre paquet) et calcule la taille d'espace disque libérée (ici un peu plus de 5 Mo).
Faire "O" pour confirmer qu'on veut bien désinstaller le paquet et ses dépendances.
On voit alors les paquets se faire désinstaller par apt-get :
Code : Console
Suppression de lbreakout2 …
Suppression de lbreakout2-data …
Suppression de libsdl-mixer1.2 …
Suppression de libsmpeg0 …
Le paquet et ses dépendances sont proprement désinstallés
apt-get upgrade : mettre à jour tous les paquets
Autre fonctionnalité particulièrement pratique d'apt-get est sa capacité à mettre à jour tous les paquets installés sur son système d'un seul coup. Le programme ira chercher les nouvelles versions de tous nos programmes et les mettra à jour s'il y a une nouvelle version de disponible :
Code : Console
apt-get upgrade
 |
Penser à faire un apt-get update pour mettre à jour son cache des paquets avant de lancer un upgrade.
En effet, apt-get compare la version de nos paquets installés avec ceux présents dans le cache. Si notre cache est "ancien", apt-get se dira "Y'a rien de nouveau, pas besoin de mise à jour". Veiller donc à faire régulièrement un apt-get update pour être 100% sûr que notre cache est à jour. |
On nous demandera une confirmation après avoir listé tous les paquets qui ont besoin d'une mise à jour.
Rien d'autre à faire. Tous nos paquets installés seront mis à jour (ça peut être un peu long par contre).
Si tous nos paquets sont déjà à jour, on verra le message suivant :
Code : Console
root@alain-pc01:~# apt-get upgrade
Lecture des listes de paquets… Fait
Construction de l'arbre des dépendances
Lecture de l'information d'état… Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Tous ces "0" de la dernière ligne nous indique que rien ne s'est passé car il n'y avait rien à faire.
Cela signifie que notre système est à jour.
 |
Il est conseillé de faire un apt-get upgrade régulièrement pour avoir le système le plus à jour possible. Cela permet de bénéficier des dernières fonctionnalités des logiciels, mais cela corrige aussi les failles de sécurité qui auraient pu être découvertes dans les programmes (et on en trouve tous les jours, même chez les logiciels libres !). |