Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format
PDF et la grise au format ODT →
Ceci est une ancienne révision du document !
L'utilisation normale de Debian se fait sans jamais manipuler de fichier .deb
à la main, mais en indiquant à APT où récupérer ces fichiers.
En général, ils se trouvent sur des serveurs appelés dépôts. Il convient alors de renseigner ses fichiers sources.list
afin d'indiquer de quelles sections de quelles branches de quels dépôts il lui faut récupérer les listes de paquets.
Cela se fait en renseignant les fichiers présents dans /etc/apt/sources.list.d/
.
Les paquets Debian sont regroupés dans des dépôts, le principal étant le dépôt officiel. Chaque dépôt se divise ensuite suivant les différentes branches de Debian (voir branches_debian). Et chaque branche est à son tour divisée en sections relatives à la liberté des paquets.
Prenons par exemple le dépôt officiel Debian.
Le miroir1) français habituel se situe à l'adresse http://ftp.fr.debian.org/debian/
.
On trouve sur ce miroir les branches Debian habituelles : oldstable2), stable3), testing4), unstable5) et experimental6). Il existe trois branches supplémentaires : stable-updates, stable-proposed-updates et stable-backports apportant des paquets supplémentaires à la branche stable, mais ne faisant pas à proprement parler partie de celle-ci.
Si l'on s'intéresse à la branche stable, on y trouve à l'intérieur les trois sections habituelles : main, contenant les paquets libres, contrib, contenant les paquets libres dépendant de contenu non-libre, et non-free contenant les paquets non-libres.
Nous allons maintenant voir où placer nos fichiers contenant la liste des dépôts, et comment les rédiger.
L'ancienne méthode était de placer toutes les sources dans le fichier /etc/apt/sources.list
. Aujourd'hui, on utilise plutôt le répertoire /etc/apt/sources.list.d/
en créant un nouveau fichier par thème. Par exemple :
/etc/apt/sources.list.d/00debian-officiel.list
pour les paquets du miroir officiel/etc/apt/sources.list.d/10deb-mozilla.list
pour les miroirs des mainteneurs mozillaS'agissant d'une opération d'administration, la création et l'édition de ces fichiers devra être faite en tant que super-utilisateur7) avec un éditeur de texte8) tel nano, vim, etc.
On pourra par exemple commencer comme cela :
su - (mot de passe root) nano /etc/apt/sources.list.d/00debian-officiel.list
La syntaxe est élémentaire, pour récupérer la liste des paquets d'un dépôt url_du_dépôt
pour la branche ma_branche
pour les sections section_1
et section_2
, on écrit :
deb url_du_dépôt ma_branche section_1 section_2
Exemple, pour récupérer les listes des trois sections de la branche stable du dépôt officiel via le miroir francophone :
deb http://ftp.fr.debian.org/debian/ stable main contrib non-free
On peut, et il est même préférable de le faire, remplacer la branche par son nom release. Par exemple, la stable est au moment de la rédaction du tuto wheezy. La ligne devient donc :
deb http://ftp.fr.debian.org/debian/ wheezy main contrib non-free
De manière similaire, si vous voulez récupérer le code source des paquets, pour recompiler vous-même les paquets après y avoir effectué vos propres modifications, vous pouvez ajouter une ligne sur le modèle suivant :
deb-src url_du_dépôt ma_branche section_1 section_2
Ce qui donne pour notre exemple précédent :
deb-src http://ftp.fr.debian.org/debian/ wheezy main contrib non-free
Après chaque modification des sources.list
, il est nécessaire de lancer un update de la liste des paquets, via la commande suivant :
aptitude update
Cette opération doit être lancée en tant que super-utilisateur9).
Nous avons repris ci-dessous une liste des principaux dépôts Debian existants. Il faut savoir que si les dépôts officiels sont des dépôts de confiance, chaque Développeur Debian signant ses envois via une clé GPG, il n'en est pas nécessairement de même des autres dépôts. Aussi, nous vous conseillons pour des raisons de sécurité de vous limiter autant que possible aux dépôts officiels, voire même à la section main de celui-ci, le code en étant libre et donc vérifiable par tout le monde.
Ils existent pour les branches oldstable, stable=wheezy, testing=jessie, unstable=sid et experimental=rc-buggy (avec en plus, dans le cas de stable, les branches stable-updates, stable-proposed-updates et stable-backports) et sont à chaque fois déclinés en les trois sections main, contrib et non-free.
Exemples pour un Wheezy libre mais très à jour, sans récupération de la liste des sources :
# wheezy deb http://ftp.fr.debian.org/debian/ wheezy main # wheezy updates deb http://ftp.fr.debian.org/debian/ wheezy-updates main # wheezy proposed updates deb http://ftp.fr.debian.org/debian/ wheezy-proposed-updates main # wheezy-backports deb http://ftp.fr.debian.org/debian wheezy-backports main
Un complément indispensable pour les machines tournant sur Debian stable et étant exposées sur internet.
Exemple pour wheezy, sans récupération de la liste des sources :
# wheezy security deb http://security.debian.org/ wheezy/updates main
Ce dépôt permet d'accéder à la dernière version d'Iceweasel, le clone 100% libre10) de Firefox.
Il contient trois sections : iceweasel-release, iceweasel-beta et iceweasel-aurora associées aux versions correspondantes de Firefox.
Exemple pour récupérer la version release pour Wheezy, sans récupération de la liste des sources :
# wheezy iceweasel release deb http://mozilla.debian.net/ wheezy-backports iceweasel-release
aptitude install pkg-mozilla-archive-keyring
via aptitude install pkg-mozilla-archive-keyring
Ce dépôt contient quelques paquets ne pouvant pas être hébergés par Debian car ne respectant pas les conditions de distributions. C'est en particulier le cas de la libdvdcss2
permettant de déchiffrer certains DVD protégés.
Ce dépôt ne comporte pas de section contrib.
Exemple pour wheezy, sans récupération de la liste des sources :
# wheezy deb-multimedia deb http://www.deb-multimedia.org wheezy main non-free
aptitude –allow-untrusted install deb-multimedia-keyring
via aptitude install pkg-mozilla-archive-keyring
(en cours)
Avec la branche testing, il peut arriver que des paquets soient cassés ou bien que le gestionnaire de paquets rencontre des problèmes de dépendance lors de mise à jour ou de l'installation de paquets, l'un d'eux peut être momentanément absent de testing.
Donc, en pratique, il est préférable, voire essentiel, d'ajouter à son fichier sources.list11) les dépôts de la branche sid car en cas de pépin on pourra toujours aller piocher dans celle-ci pour résoudre le problème.
Bien entendu, il est alors impératif de créer un fichier preferences afin de donner une priorité inférieure à la branche sid.
Installer une stable pour mettre à jour vers une testing, c'est du pur masochisme.
À ne faire qu'en dernier recours, par exemple si l'installateur de la testing ne fonctionne pas.
En effet, il y a tellement de changements d'une version à une autre que la mise à jour est un processus dangereux et parfois pas très propre.
C'est à cause des difficultés de la mise à jour que l'on conseille aux gens d'attendre un mois après la sortie de la nouvelle stable avant de sauter le pas.
Comme pour la branche stable, lors de l'évolution d'une branche testing en stable, si vous étiez déjà en testing, il vaut mieux préalablement à cette évolution remplacer testing par son nom release (actuellement wheezy) et passer donc un temps en stable pour attendre la mise en place d'une testing moins folâtre.
Vous pourrez ensuite migrer vers la nouvelle testing en remettant, soit testing, soit le nouveau nom release issue de la branche sid.
Un fichier sources.list purement unstable :
## =============================================== ## sid deb http://ftp.fr.debian.org/debian/ sid main contrib non-free deb-src http://ftp.fr.debian.org/debian/ sid main contrib non-free ## sid multimedia deb http://www.deb-multimedia.org sid main non-free deb-src http://www.deb-multimedia.org sid main non-free ## ===============================================
Il est possible d'utiliser uniquement les fichier sources.list propre à sid que l'on retrouve ci-haut, c'est ce que certaines personnes n'hésitent pas à faire.
Cependant il est conseillé d'ajouter les lignes du fichier sources testing, voire experimental dans le fichier sources.list sid ainsi en cas de problème on ira chercher temporairement des paquets dans les autres branches.
Voici un exemple de situation où il est utile d'avoir un fichier sources.list plus complet.
Après avoir fait un :
aptitude safe-upgrade
Où tout semblait se dérouler correctement je me retrouve, à la fin, avec un paquet cassé. Même avec un safe-upgrade, nous ne sommes pas à l'abri de ce genre d'ennui.
Après tout les développeurs sont humains et peuvent aussi faire des erreurs.
Pour résoudre le problème, j'ai installé la version du paquet qui se trouvait dans testing avec un
aptitude reinstall le_paquet/testing
Cela a réglé temporairement le problème.
Comme les mises à jour sont rapides avec unstable, dès le lendemain une nouvelle version du paquet apportait le correctif.
Le sources.list complet pour un pinning :
## ================================================== ## wheezy deb http://ftp.fr.debian.org/debian/ wheezy main contrib non-free deb-src http://ftp.fr.debian.org/debian/ wheezy main contrib non-free ## wheezy multimedia deb http://www.deb-multimedia.org wheezy main non-free deb-src http://www.deb-multimedia.org wheezy main non-free ## wheezy security deb http://security.debian.org/ stable/updates main contrib non-free deb-src http://security.debian.org/ stable/updates main contrib non-free ## wheezy updates deb http://ftp.fr.debian.org/debian/ wheezy-updates main contrib non-free deb-src http://ftp.fr.debian.org/debian/ wheezy-updates main contrib non-free ## wheezy-backports deb http://ftp.fr.backports.debian.org/debian-backports wheezy-backports main contrib non-free ## ================================================== ## jessie deb http://ftp.fr.debian.org/debian/ jessie main contrib non-free deb-src http://ftp.fr.debian.org/debian/ jessie main contrib non-free ## jessie multimedia deb http://www.deb-multimedia.org jessie main non-free deb-src http://www.deb-multimedia.org jessie main non-free ## jessie security deb http://security.debian.org/ jessie/updates main contrib non-free deb-src http://security.debian.org/ jessie/updates main contrib non-free ## ================================================== ## sid deb http://ftp.fr.debian.org/debian/ sid main contrib non-free deb-src http://ftp.fr.debian.org/debian/ sid main contrib non-free ## sid multimedia deb http://www.deb-multimedia.org sid main non-free deb-src http://www.deb-multimedia.org sid main non-free ## ================================================== ## experimental deb http://ftp.fr.debian.org/debian/ experimental main contrib non-free # deb-src http://ftp.fr.debian.org/debian/ experimental main contrib non-free ## experimental multimedia (Seulement pour architecture amd64) deb http://www.deb-multimedia.org experimental main # deb-src http://www.deb-multimedia.org experimental main
En choisissant l'installation sid, le fichier preferences n'est pas nécessaire si vous combinez tous les fichiers sources.list ci-haut car les paquets les plus récents se trouvent toujours dans le dépôt unstable. Les paquets les plus récents seront donc installés par défaut.
Pour les sources debian-multimedia, en cas de problème avec celui-ci vous pouvez utiliser les dépôts miroirs pour tenter une meilleure connexion.
Soit :
# Dépôts multimédia mirror
deb http://mirror.home-dn.net/debian-multimedia/ wheezy main deb http://mirror.home-dn.net/debian-multimedia/ jessie main deb http://mirror.home-dn.net/debian-multimedia/ sid main deb http://mirror.home-dn.net/debian-multimedia/ experimental main
Où :