neos - Pinning sous Debian. http://neos.tuxfamily.org/index.php

Transcription

neos - Pinning sous Debian. http://neos.tuxfamily.org/index.php
neos - Pinning sous Debian.
Accueil
http://neos.tuxfamily.org/index.php?option=com_c...
Tutos
Liens
Contact
News
Rechercher
Galerie
Pinning sous Debian.
Le fichier sources.list contient les adresses pointant vers les différents dépôts de
Debian.
Ce fichier se trouve dans /etc/apt/,
vous en aurait la description complète dans le man en ligne de commandes --> man
sources.list
Un fichier sources.list complet pour etch (l'actuelle version stable)
devrait contenir ceci :
# Dépôts Etch (Stable)
deb http://ftp.fr.debian.org/debian/ etch main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ etch main contrib
non-free
# Dépots sécurité
deb http://security.debian.org/ etch/updates main contrib
non-free
deb-src http://security.debian.org/ etch/updates main contrib
non-free
# Dépôts Multimédia
deb http://www.debian-multimedia.org/ etch main
deb-src http://www.debian-multimedia.org/ etch main
Il est clair qu'un fichier sources.list est à adapté selon ces besoins, pour serveur
nulle besoin de dépôts multimédia.
à ce sources.list on peut aussi rajouter les dépôts "volatiles" ou encore les dépôts
"Backports".
Qu'est-ce que les dépôts volatile ?
Qu'est-ce que les dépôts backports ?
Un fichier sources.list pour lenny (l'actuelle testing)
# Dépôts lenny (testing)
deb http://ftp.fr.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ lenny main contrib
non-free
# Dépôts sécurité
deb http://security.debian.org/ lenny/updates main contrib
non-free
deb-src http://security.debian.org/ lenny/updates main contrib
non-free
# Dépôts multimédia
deb http://www.debian-multimedia.org/ lenny main
deb-src http://www.debian-multimedia.org/ lenny main
Un fichier sources.list pour Sid (Unstable).
# Dépôts sid (unstable)
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
# Dépôts multimédia
deb http://www.debian-multimedia.org/ sid main
deb-src http://www.debian-multimedia.org/ sid main
Il y aussi les dépôts "expérimental" qui s'utilisent en complément aux
autres dépôts :
# Depot experimental
1 sur 6
Copyright 2008 neos.
28/11/2008 21:27
neos - Pinning sous Debian.
http://neos.tuxfamily.org/index.php?option=com_c...
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
# Dépôts Multimédia
deb http://www.debian-multimedia.org/ experimental main
deb-src http://www.debian-multimedia.org/ experimental main
Pour les Dépôts Multimédia, vous aurez certainement un message concernant une
clé gpg manquante, pour y remédier (en root) :
# apt-get install debian-multimedia-keyring
ou
# gpg --keyserver pgpkeys.mit.edu --recv-key clé
puis
# gpg -a --export clé | apt-key add remplacer clé par les 8 derniers chiffres de la clé demandé
Quelques précisions sur ces trois principales branches
(Stable,Testing,Unstable) :
La distribution Stable (etch) est la version officiel de Debian, elle contient
des paquets stabilisés,
c'est donc la version recommandée pour une utilisation en production,
type serveur.
La distribution Testing (Lenny) comprend des paquets plus récents mais
qui ne sont pas encore
stabilisés et qui sont encore en cours de tests on ne peut donc pas avoir
confiance à 100 %
pour une utilisation de type serveur, Testing est donc la distribution en
cours de stabilisation.
La distribution Unstable (Sid) est comme son nom l'indique instable et
contient les paquets
en cours de dévellopement , les paquets sont plus récents, mais certains
bugs non résolus.
plutot destinés aux utilisateurs plus avançés.
Le fichier preferences ou comment gérer plusieurs dépôts dans un même
sources.list.
Un fichier preferences, qu'il faudra créer dans /etc/apt/ permet de donner des
priorités aux dépôts,
L'intéret est de garder la version des paquets que l'on souhaite, c'est à dire, faire
des mise à jour
pour une distribution donnée, puis, pouvoir piocher dans un autre dépôt si le
paquet n'est pas disponible
dans votre distribution par défaut, on va donc pouvoir gérer plusieurs versions de
paquets dans les différentes
branches disponible. Un exemple sera plus parlant.
Pour cet exemple on va cumuler les dépôts cités plus haut .
##Dépôts Etch (Stable)
deb http://ftp.fr.debian.org/debian/ etch main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ etch main contrib
non-free
deb http://security.debian.org/ etch/updates main contrib
non-free
deb-src http://security.debian.org/ etch/updates main contrib
non-free
deb http://www.debian-multimedia.org/ etch main
deb-src http://www.debian-multimedia.org/ etch main
## Dépôts lenny (testing)
deb http://ftp.fr.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ lenny main contrib
2 sur 6
28/11/2008 21:27
neos - Pinning sous Debian.
http://neos.tuxfamily.org/index.php?option=com_c...
non-free
deb http://security.debian.org/ lenny/updates main contrib
non-free
deb-src http://security.debian.org/ lenny/updates main contrib
non-free
deb http://www.debian-multimedia.org/ lenny main
deb-src http://www.debian-multimedia.org/ lenny main
##Dépôts sid (unstable)
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
deb http://www.debian-multimedia.org/ sid main
deb-src http://www.debian-multimedia.org/ sid main
#Depot 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
deb http://www.debian-multimedia.org/ experimental main
deb-src http://www.debian-multimedia.org/ experimental main
Un fichier preferences, pour par exemple utiliser en priorité les dépôts stable,
ensuite testing, unstable et enfin experimental .
Pour créer ce fichier, il suffit d'utiliser votre éditeur de textes favori, par exemple
avec nano en ligne de commandes
# nano /etc/apt/preferences
et d'y mettre le contenu adéquate pour utiliser en priorité la version stable des
paquets.
Package: *
Pin: release o=Debian,a=stable
Pin-priority: 990
Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable
Pin-priority: 980
Package: *
Pin: release o=Debian,a=testing
Pin-priority: 970
Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing
Pin-priority: 960
Package: *
Pin: release o=Debian,a=unstable
Pin-priority: 90
Package: *
Pin: release o=Unofficial Multimedia Packages,a=unstable
Pin-priority: 80
Package: *
Pin: release o=Debian,a=experimental
Pin-priority: 70
Package: *
Pin: release o=Unofficial Multimedia Packages,a=experimental
Pin-priority: 60
Vous l'aurez compris, il suffit de donner la priorité la plus haute (Pin-priority:
valeur)
3 sur 6
28/11/2008 21:27
neos - Pinning sous Debian.
http://neos.tuxfamily.org/index.php?option=com_c...
à la version de la distribution que l'on souhaite privilégié (Stable dans l'exemple)
Les mise à jours se feront donc en version stable (etch actuellement)
et lorsque vous installerez un paquet, il prendra la version existante dans stable, si
inexistante
il cherchera ensuite dans les dépôts testing et ainsi de suite.
Les valeurs :
P > 1000
Le paquet sera installé même si APT est forcé d'installer une version
plus ancienne que la version actuelle
990 < P <=1000
Le paquet sera installé sauf si la version installée est plus récente.
500 < P <=990
le paquet ne sera installé qu'à défaut de version plus récente installée
ou disponible dans la distribution cible
100 < P <=500
Le paquet ne sera installé que s'il en existe aucune version plus récente,
installée ou disponible dans une autre distribution
0 < P <=100
Le paquet ne sera installé que si aucune autre version du paquet n'est
installée
P<0
le paquet ne sera jamais installé
il y a bien sur plusieurs possibilitées à intégrer dans ce fichier, pour en savoir plus
n'hésitait pas à consulter
le man apt_preferences en ligne de commandes, très complet et instructif.
!!!! Très important !!!!
lorsque vous modifiez votre sources.list et après création du fichier preferences.
faites un # apt-get update mais pas de # apt-get upgrade ou # apt-get
dist-upgrade
sans avoir saisis cette commande --> apt-cache policy pour controler si les priorités
ont été prises en compte.
Les "Pin-priority" s'afficheront à gauche (90,......)
aucune ligne ne doit rester à la valeur 500, à part les lignes où il est indiqué
"translation"
comme par exemple :
500 http://www.debian-multimedia.org lenny/main Translation-fr
Pour l'instant pas plus d'explication sur ces lignes, ça dérange pas de toute façon.
Cette même commande est à utiliser souvent pour connaître les différentes
versions disponible pour un paquet
donné en argument et ainsi choisir la version que l'on souhaite installé, un exemple
avec le jeu wesnoth.
apt-cache policy wesnoth
4 sur 6
28/11/2008 21:27
neos - Pinning sous Debian.
http://neos.tuxfamily.org/index.php?option=com_c...
Pour installer la version de wesnoth du dépôt experimental :
# apt-get install -t experimental wesnoth
ou
# apt-get install wesnoth/experimental
Ces deux commandes donne temporairement la priorité 990 à la distribution
indiquée (experimental dans l'exemple).
il faut donc être prudent et simuler d'abord l'installation avec l'option -s pour voir
ce qui se passe,
vérifier que les dépendances soient toutes satisfaites, car comme vous pouvez vous
en doutez tout à une limite.
Si un paquet de part ses dépendances demande par exemple une version plus
récente du paquet libc6 ,
sachez que libc6 fait partie du coeur du système, au temps passer à la distribution
supérieur,
mais ce n'est heureusement pas souvent le cas.
Pour passer d'une distribution à une autre
Par exemple pour passer de etch (stable) à lenny (testing).
il faudra donc mettre une priorité plus haute pour testing. Un exemple avec un
sources.list etch+lenny :
##Dépôts Etch (Stable)
deb http://ftp.fr.debian.org/debian/ etch main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ etch main contrib
non-free
deb http://security.debian.org/ etch/updates main contrib
non-free
deb-src http://security.debian.org/ etch/updates main contrib
non-free
deb http://www.debian-multimedia.org/ etch main
deb-src http://www.debian-multimedia.org/ etch main
## Dépôts lenny (testing)
deb http://ftp.fr.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ lenny main contrib
non-free
deb http://security.debian.org/ lenny/updates main contrib
non-free
deb-src http://security.debian.org/ lenny/updates main contrib
non-free
deb http://www.debian-multimedia.org/ lenny main
deb-src http://www.debian-multimedia.org/ lenny main
On va faire un fichier preferences avec une priorité plus haute pour lenny (testing)
Package: *
Pin: release o=Debian,a=testing
Pin-priority: 990
Package: *
Pin: release o=Unofficial Multimedia Packages,a=testing
5 sur 6
28/11/2008 21:27
neos - Pinning sous Debian.
http://neos.tuxfamily.org/index.php?option=com_c...
Pin-priority: 980
Free Joomla
Template by
Estime
Package: *
Pin: release o=Debian,a=stable
Pin-priority: 970
Package: *
Pin: release o=Unofficial Multimedia Packages,a=stable
Pin-priority: 960
il suffira ensuite de faire un apt-get update puis apt-get dist-upgrade et les paquets
seront tous mis à jour vers testing
Pour bloquer la version d'un paquet
Vous voudriez peut-être bloquer un paquet pour qu'il ne puisse pas se mettre à
jour.
Un exemple avec nano, pour connaîttre la version actuellement installée, on peut
utiliser apt-cache show
apt-cache show nano | grep Version
l'entrée adéquate à mettre dans le fichier preferences sera :
Package: nano
Pin: version 2.0.7-4
Pin-priority: 1001
On vérifie avec apt-cache policy le paquet doit apparaîttre "étiquetés"
< Précédent
Suivant >
[ Retour ]
XHTML 1.0 | CSS
6 sur 6
28/11/2008 21:27

Documents pareils