Miroir Debian

De ClissXXI.

(Différences entre les versions)
(Autres solutions à creuser)
Ligne 74 : Ligne 74 :
* Idem pour [http://apt-mirror.sourceforge.net/ apt-mirror]
* Idem pour [http://apt-mirror.sourceforge.net/ apt-mirror]
-
* [http://www.debian.org/mirror/ftpmirror Setting up a Debian archive mirror] recommande d'utiliser [http://www.debian.org/mirror/anonftpsync anonftpsync]. Même remarque :p Qui plus est, il faut sélectionner les architectures qu'on ne souhaite pas télécharger, à la place de ne sélectionner que les architectures dont on a besoin. debmirror semble plus simple.
+
* [http://www.debian.org/mirror/ftpmirror Setting up a Debian archive mirror] recommande d'utiliser [http://www.debian.org/mirror/anonftpsync anonftpsync]. Même remarque :p Qui plus est, il faut sélectionner les architectures qu'on ne souhaite pas télécharger, à la place de ne sélectionner que les architectures dont on a besoin. C'est un script très court qui se base sur rsync, et ne peut pas créer de miroir partiel. debmirror semble plus simple.
-
 
+
== Autres solutions non retenues ==
== Autres solutions non retenues ==

Version du 22 octobre 2006 à 12:02

Si vous allez chez des clients démunis d'un accès haut débit, un miroir Debian partiel doit faire partie de votre kit de survie.

Tentons donc de créer un miroir:

  • Utilisation de debmirror:
aptitude install debmirror
  • Télécharger les clefs GPG:
gpg --keyserver keyring.debian.org --recv 4F368D5D # 2005
gpg --keyserver keyring.debian.org --recv 2D230C5F # 2006
gpg --keyserver pgpkeys.pca.dfn.de --recv 16BA136C # backports.org
  • Lancer la réplication:
rm /etc/debmirror.conf  # it would conflict with our settings

# Sarge
debmirror --verbose --host=ftp2.fr.debian.org --dist=sarge --dist=stable \
   --section=main,main/debian-installer --nosource --getcontents \
   /mnt/mirrors/debian

# Sarge security
debmirror --verbose --host=security.debian.org --dist=sarge/updates \
   --root=debian-security  --section=main --nosource \
   /mnt/mirrors/debian-security

# Sarge backports
debmirror --verbose --host=www.backports.org --method=http \
   --dist=sarge-backports --section=main --nosource --getcontents \
   /mnt/mirrors/backports.org

Il est possible d'interrompre la réplication et de la reprendre plus tard.

Il est également possible d'utiliser plusieurs fois l'option --dist, par exemple --dist=sarge --dist=etch. Ici on récupère à la fois 'sarge' et 'stable' de sorte que les deux soient disponibles (les logiciels peuvent utiliser alternativement un nom ou l'autre) - bien entendu les paquets eux-mêmes ne seront téléchargés qu'une seule fois, dans pool/.

--getcontents permet de récupérer le fichier Content-i386.gz, utilisé notamment par apt-file. Il n'est pas fourni par security.debian.org pour le moment, et demander --getcontents est considéré comme une erreur (plus de mise à jour de Packages.gz - à corriger).

Inconvénients:

  • Il y a une perte de place, car les paquets qui ont eu une mise à jour de sécurité sont téléchargés dans mirrors/debian, et redondants par rapport à mirrors/debian-security. Pourrait-il y avoir des problèmes avec l'installateur Debian si la version d'origine de ces paquets manque, cependant?
  • Il n'est pas possible de récupérer uniquement les codes source

Place disque utilisée (2006-03-25):

  • mirrors/debian: ~8,6 Go (fixe, + ~9 Go pour les sources)
  • mirrors/debian-security: ~1,4 Go (grossit, + ~800 Mo pour les sources)
  • mirrors/backports.org: ~2,8 Go (grossit, + ~2Go pour les sources)

On peut utiliser directement le miroir en local: dans /etc/apt/sources.list:

deb file:///mnt/mirrors/debian sarge main

Partager le miroir

Une petite config Apache suffit:

Alias /mirrors /mnt/mirrors
<Directory "/mnt/mirrors">
  Options Indexes
  AllowOverride None
</Directory>

Au niveau client, le /etc/apt/sources.list ressemblera à:

deb http://192.168.1.63/mirrors/debian sarge main
deb http://192.168.1.63/mirrors/debian-security sarge/updates main
deb http://192.168.1.63/mirrors/backports.org sarge-backports main

Pour une installation Debian par le réseau, lorsque l'installateur vous demande le pays de votre miroir, choisissez le paramétrage manuel (tout en haut de la liste), puis:

  • Nom d'hôte: IP de votre machine
  • Répertoire: /mirrors/debian

Autres solutions à creuser

  • apt-move "can also build a partial or complete local mirror of a Debian binary distribution (including an ``installed-packages only mirror)."
  • debian-mirror est peut-être intéressant, mais pas de paquet Debian, bouh :p
  • Setting up a Debian archive mirror recommande d'utiliser anonftpsync. Même remarque :p Qui plus est, il faut sélectionner les architectures qu'on ne souhaite pas télécharger, à la place de ne sélectionner que les architectures dont on a besoin. C'est un script très court qui se base sur rsync, et ne peut pas créer de miroir partiel. debmirror semble plus simple.

Autres solutions non retenues

  • Il est possible d'utiliser un DVD d'installation, mais ce ne sera pas pratique:
    • il vous faudra changer régulièrement entre les deux CDs, voire entre plusieurs postes
    • vous n'aurez pas les mises à jour de sécurité (même si votre CD a été créé avec Jigdo)
  • Utiliser un apt-proxy sur votre ordinateur portable n'est pas une solution satisfaisante: il vous faudra le paramétrer pour éviter qu'il cherche des mises à jour lors d'un travail hors-ligne, et il vous manquera certainement des paquets.
  • debmirror + fichier de configuration (par opposition à ligne de commande): on a besoin d'au moins deux serveurs et donc deux configurations au minimum (stable, stable/security, éventuellement sarge-backports). C'est plus pratique en ligne de commande.
Outils personnels