3. Comment Jigdo fonctionne (optionnel)

Il n'est pas nécessaire de lire cette cette section pour utiliser Jigdo, mais cela peut vous aider à en démystifier le fonctionnement. Si vous n'êtes pas intéressé par les détails, allez simplement à la Comment installer Jigdo.

3.1. Préparation de l'image Iso pour le téléchargement

Une image CD est un système de fichiers appelé iso9660. Pour cette discussion, nous pouvons sans risque parler d'une image CD comme étant un gros fichier (de près de 650 Mo) appelé « image Iso » qui contient des fichiers à des positions différentes. Par exemple, si un CD contient un fichier de 567 octets nommé LISEZ.MOI, l'image Iso peut inclure le contenu de ce fichier entre les positions (offset) 20480000 et 20480566. Vous pouvez vous représenter une image CD comme ceci :

              -----------------------------------------------
Image Iso :   |xx| fichier-0 |x| fichier-1 |x| fichier-2 |xx|
              -----------------------------------------------

Les zones avec des « x » de l'image contiennent des choses telles que le contenu des répertoires, du remplissage par des zéro, le nom du disque, le bloc d'amorçage, et cætera.

jigdo-file utilise deux choses en entrée : l'image complète du CD (donc l'image Iso doit avoir été faite) et un ensemble de fichiers qui peuvent se trouver ou non dans l'image. Voici une représentation de ce qui est fourni en entrée à jigdo-file :

Image  -----------------------------------------------
 Iso : |xx| fichier-0 |x| fichier-1 |x| fichier-2 |xx|
       -----------------------------------------------
Fichiers  ------------- -------------                -------------
 libres : | fichier-0 | | fichier-1 |                | fichier-3 |
          ------------- -------------                -------------

Comme par magie, jigo-file retrouvera quels fichiers libres sont contenus dans l'image Iso et leur position (offset) à l'intérieur du fichier Iso. Il générera deux fichiers : un fichier « .template » et un fichier « .jigdo ».

3.2. Le fichier .template

Partant d'une image Iso et d'un ensemble de fichiers (contenus ou non dans l'image Iso), jigdo-file générera un fichier .template pour cette image Iso. Voici à quoi ressemble ce fichier .template :

             -----------------------------------------------
.template :  |xx|  md5-0    |x|  md5-1    |x|ccccccccccc|xx|
             -----------------------------------------------

jigdo-file a déterminé que les fichiers fichier-0 et fichier-1 étaient contenus dans l'image Iso. Il a supprimé le contenu de ces fichiers et l'a remplacé par la somme de vérification md5 de chaque fichier (md5-0 et md5-1).

Les données représentées par des « x » (contenu des répertoires, remplissage par zéro, et cætera) contenues dans l'image Iso sont compressées et écrites dans le fichier .template. Pour terminer, tous les fichiers contenus dans l'image Iso mais non fournis parmi les fichiers libres (tel que fichier-2) sont également compressés et écrits dans le fichier .template. Ceci est représenté par les « c » dans la représentation du fichier .template.

Les fichiers libres qui étaient fournis à jigdo-file et qui n'ont pas été trouvés dans l'image Iso (tel fichier-3) sont ignorés.

3.3. Le fichier .jigdo

À partir d'une image Iso et d'un ensemble de fichiers qui peuvent se trouver ou non dans l'image Iso, jigdo-file génère un fichier .jigdo correspondant à cette image Iso. Les fichiers .jigdo Débian sont compressés avec gzip, vous devrez donc utiliser zcat ou zless pour visualiser leur contenu. Voici à quoi ressemble ce fichier une fois décompressé avec gunzip :

md5-0=http://un_miroir.org/fichier-0
md5-1=http://un_miroir.org/fichier-1
md5-2=http://un_miroir.org/fichier-2

Le fichier .jigdo fournit tout simplement une correspondance entre la somme de contrôle md5 du fichier contenu dans l'image Iso et l'URL où télécharger ce fichier. Il y a d'autres choses à l'intérieur du fichier .jigdo  si vous y regardez de plus près, vous verrez que le fichier .jigdo a le même format qu'un fichier « .ini ». Cela doit être compréhensible en soi, mais si vous désirez plus de détails, reportez-vous à la documentation de jigdo.

Le format montré ci-dessus n'est pas ce que vous verriez effectivement dans un fichier .jigdo normal, mais cela devrait fortement y ressembler. Si vous jetez un coup d'œil à la section [Servers] en bas du fichier .jigdo, vous verrez précisément ce qui diffère entre ce que j'ai montré ici et un vrai fichier .jigdo.

3.4. Télécharger l'image

Après avoir utilisé jigdo-file pour générer les fichiers .jigdo et .template à partir d'une image Iso, n'importe qui peut utiliser jigdo-lite pour télécharger cette image. jigdo-lite utilise wget pour télécharger tous les fichiers inclus dans l'image Iso, les rassemble et crée à la volée une copie de l'image Iso originale.

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:26