(Document inspiré notamment des livres "Debian GNU/linux - Installation, Administration, Exploitation" de Franck Ronnenburg chez CampusPress et "Cahier de l'Admin Debian GNU/Linux" de Raphaël Herzog chez Eyrolles).

Mémento des commandes abordées dans ce chapitre :

# apt-setup (ajout de sources pour le fichier sources.list)

# apt-spy -d <stable/testing/unstable> -s <localisation ; fr pour france> -o <fichier résultat> (ajout de sources pour le fichier sources.list en lui indiquant la distribution, la localisatin des mirroirs. apt-spy définira le meilleur mirroir en fonction des temps de réponse)

# netselect <mirroir1> <mirroir2> (test les temps de réponse des mirroirs passés en paramètre)

# netselect-apt <stable/testing/unstable> (test les temps de réponse des mirroirs pour une distribution avec consititution du fichier sources.list dans le répertoire courant). 

1. Le fichier /etc/apt/sources.list

Le fichier /etc/apt/sources.list décrit les différents emplacements possibles des paquets DEBIAN. APT rappatrie ensuite la liste des paquests disponibles pour chacune de ces sources, ainsi que leurs en-têtes. Il réalise cette opération en téléchargeant les fichiers Packages.gz ou Packages.bz2 (cas d'une source de paquets binaires) et Sources.gz ou Sources.bz2 (cas d'une source de paquets sources) et en analysant leur contenu.
Le fichier /etc/apt/sources.list contient sur chaque ligne une descrtiption de source, qui se décompose en 3 parties séparées par des blancs.

Le premier champ indique le type de la source :
. deb pour des paquets binaires
. deb-src pour des paquets sources.

Le deuxième champ indique l'URL de base de la source. L'URL peut débuter par :
. //file pour indiquer une source locale située dans l'arborescence de fichiers du système
. http:// pour indiquer une source accessible depuis un serveur web
. ftp:// pour une source diponible sur un serveur FTP

Le dernier champ a une syntaxe variable selon que la source correspond à un miroir Debian ou non. Dans le cas d'un miroir Debian, on nomme la distribution choisie (stable, testing, unstable ou leur nom de code du moment) puis les différentes sections souhaitées (main, contrib et non-free).

Voici un exemple d'un fichier sources.list :
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
deb-src http://security.debian.org/ lenny/updates main contrib
deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main contrib


L'ordre dans le fichier sources.list est important puisque apt ira chercher le paquet sur la premiere source indiquée si celui-ci se trouve sur plusieurs mirroirs.

Ajouter des sources au fichier /etc/apt/sources.list

Il y a deux façons d'ajouter des sources au fichier. La plus classique consiste à éditer le fichier avec vi ou vim . Une autre solution est l'utilisation de la commande apt-setup. Avant toute chose, faire une sauvegarde de votre fichier sources.list

# cp -p /etc/apt/sources.list /etc/apt/sources.list.save

Puis lancer le programme apt-setup :

# apt-setup

apt_setup12


Vous obiendrez alors l'écran ci-dessus qui vous demandera quel type de ressource vous désirez (serveur mirroir http ou ftp, cdrom, en local).

Choisir le meilleur mirroir avec netselect, netselect-apt, apt-spy

- apt-spy
apt-spy
est un programme permettant de générer le fichier sources.list. Il est possible de lui indiquer différents paramètres. Il n'y a qu'un paramètre obligatoire c'est celui de la distribution (-d distribution où distribution peut prendre la valeur stable, testing ou unstable). Voir le man pour un complément d'information.

Exemple : ici on indique que l'on cherche les mirroirs situés pour la distribution stable (-d stable), situé en france (-s fr) et l'on redirige le résultat dans le fichier /tmp/sources.list pour ne pas écraser celui d'origine (-o /tmp/sources.list)

# apt-spy -d stable -s fr -o /tmp/sources.list
SERVER: ftp.fr.debian.org
Benchmarking FTP...
                Downloaded 9721752 bytes in 15.72 seconds
                Download speed: 604.08 kB/sec
Benchmarking HTTP...
                Downloaded 51636 bytes in 15.07 seconds
                Download speed: 3.35 kB/sec

SERVER: ftp2.fr.debian.org
Benchmarking FTP...
                Downloaded 9196248 bytes in 16.46 seconds
                Download speed: 545.65 kB/sec
Benchmarking HTTP...
                Downloaded 93546 bytes in 16.01 seconds
                Download speed: 5.71 kB/sec

SERVER: ftp.iut-bm.univ-fcomte.fr
Benchmarking FTP...
                Downloaded 9666128 bytes in 16.02 seconds
                Download speed: 589.07 kB/sec
...
...
...

Une manière pour choisir un mirroir est aussi d'utliser netselect. netselect va indiquer le miroir dont les temps de réponse sont les plus courts en fonction de la liste donnée en paramètre.

# netselect ftp.debian.org http.us.debian.org ftp.at.debian.org ftp.debian.org.br
 
163 ftp.at.debian.org

En l'occurence pour moi ce serait ftp.at.debian.org.

netselect-apt fait la même chose en consitituant le fichier sources.list dans votre répertoire courant. Il faut lui indiquer la distribution en paramètre

# netselect-apt stable