Dans l'esprit de la communauté Linux, RedHat Software a rendu disponible ses distributions Linux pour plusieurs plateformes sur son site FTP. Elles sont toutes disponibles à partir de la racine du répertoire de distribution (pub/redhat/linux/). Jetez donc un œil sur l'arbre de la distribution.
La dernière distribution est, à l'heure où j'écris ces lignes, disponible uniquement pour la plateforme i386. Le répertoire de haut niveau apparaît un peu sans consistence, étant donnée la présence d'une seule architecture (pub/redhat/linux/9/en/os/).
i386/
Autrement, le répertoire de haut niveau, pour les releases un peu plus anciennes que la 9, contient les distributions des différentes plateformes. Par exemple, le répertoire correspondant à la release 7.1 de RedHat Linux est structuré de cette façon:
alpha/ i386/ ia64/ ppc/ s390x/
Pour une distribution RedHat 9, la racine du répertoire i386 ressemble à ce qui suit:
-rwxr-xr-x 2 root root 248 Mar 14 2003 autorun drwxr-xr-x 7 root root 4096 Mar 14 2003 dosutils -rw-r--r-- 3 root root 6192 Mar 14 2003 EULA -rw-r--r-- 3 root root 18385 Mar 14 2003 GPL drwxr-xr-x 3 root root 2048 Mar 14 2003 images drwxr-xr-x 2 root root 2048 Mar 14 2003 isolinux -rw-r--r-- 3 root root 6127 Mar 14 2003 README -rw-r--r-- 2 root root 13052 Mar 14 2003 README-Accessibility -rw-r--r-- 2 root root 6686 Mar 14 2003 README.de -rw-r--r-- 2 root root 6990 Mar 14 2003 README.es -rw-r--r-- 2 root root 6492 Mar 14 2003 README.fr -rw-r--r-- 2 root root 6805 Mar 14 2003 README.it -rw-r--r-- 2 root root 7995 Mar 14 2003 README.ja -rw-r--r-- 2 root root 7312 Mar 14 2003 README.ko -rw-r--r-- 2 root root 5070 Mar 14 2003 README.pt -rw-r--r-- 2 root root 6613 Mar 14 2003 README.pt_BR -rw-r--r-- 2 root root 5879 Mar 14 2003 README.zh_CN -rw-r--r-- 2 root root 5892 Mar 14 2003 README.zh_TW drwxr-xr-x 4 root root 2048 Mar 14 2003 RedHat -rw-r--r-- 2 root root 25824 Mar 14 2003 RELEASE-NOTES -rw-r--r-- 2 root root 29902 Mar 14 2003 RELEASE-NOTES-de.html -rw-r--r-- 2 root root 30409 Mar 14 2003 RELEASE-NOTES-es.html -rw-r--r-- 2 root root 32354 Mar 14 2003 RELEASE-NOTES-fr.html -rw-r--r-- 2 root root 30064 Mar 14 2003 RELEASE-NOTES.html -rw-r--r-- 2 root root 29925 Mar 14 2003 RELEASE-NOTES-it.html -rw-r--r-- 2 root root 34666 Mar 14 2003 RELEASE-NOTES-ja.html -rw-r--r-- 2 root root 33520 Mar 14 2003 RELEASE-NOTES-ko.html -rw-r--r-- 2 root root 29496 Mar 14 2003 RELEASE-NOTES-pt_BR.html -rw-r--r-- 2 root root 22747 Mar 14 2003 RELEASE-NOTES-pt.html -rw-r--r-- 2 root root 25217 Mar 14 2003 RELEASE-NOTES-zh_CN.html -rw-r--r-- 2 root root 26645 Mar 14 2003 RELEASE-NOTES-zh_TW.html -rw-r--r-- 3 root root 1910 Mar 14 2003 RPM-GPG-KEY -r--r--r-- 1 root root 1823 Mar 14 2003 TRANS.TBL
Le répertoire SRPMS contient les paquets RPMS en forme source.
Le répertoire images contient les images des disquettes de démarrage et de pilotes pouvant être copiés sur une disquette si besoin. Pour la release 9, il n'existe qu'une seule image de disque de démarrage. Cette image de démarrage est appelée boot.img. Un deuxième disque de pilotes est nécessaire en plus de la première si l'installation n'est pas exécutée à partir d'un CD-ROM ou d'un disque dur. Un fichier boot.iso a maintenant été ajouté pour démarrer une machine à partir du lecteur de CD-ROM et pour lancer une installation réseau plus facilement (c'est-à-dire sans s'embêter avec tout un tas de disquettes). Voir la section installation et les références pour plus de détails et consulter le fichier README dans le répertoire pour une explication plus détaillée des différents fichiers.
Le répertoire isolinux contient les fichiers nécessaires pour démarrer sur le CD (et pour reconstruire des CDs amorçables qui fonctionnent de la même façon). Ce processus a été modifié pour passer d'une émulation de disquette à pas d'émulation du tout. Ceci aide à éviter les contraintes d'espace et les problèmes de compatibilité.
Le répertoire dosutils contient différents programmes pour certains autres systèmes d'exploitation, qui sont parfois utiles pour le bon déroulement du processus d'installation. Un fichier README d'explications est aussi inclus dans ce cas.
La liste est complétée par un grand nombre de fichiers et le répertoire RedHat. Ce dernier est le sujet des sections suivantes alors que les précédents ont un contenu compréhensible en lisant seulement leur nom (sauf peut-être celui du EULA, ou End User License Agreement).
La plus importante partie de l'arbre du répertoire a sa racine dans le répertoire RedHat :
drwxr-xr-x 2 root root 53248 Jun 14 03:15 RPMS drwxr-xr-x 2 root root 4096 Jun 14 04:15 base
Le répertoire RPMS contient la grosse partie de la distribution RedHat consistant en un ensemble de fichiers RPM (Redhat Package Manager). Un paquet RPM contient typiquement des exécutables binaires, avec les fichiers de configuration et la documentation. Voir la section les paquets RPM pour plus d'informations.
Le répertoire base contient différents fichiers nécessaires lors de l'installation, comme le fichier comps.xml, qui définit les composants (groupes de paquets) utilisés durant la phase « Choisissez les paquets à installer ». Voir la section le fichier comps pour plus d'informations sur ce fichier et pour savoir l'utiliser.
Deux autres fichiers importants dans le répertoire base sont hdlist et hdlist2 contenant la plupart des champs d'entêtes de tous les RPMs dans le répertoire RPMS. Ceci veut dire que toutes les interdépendances parmi les paquets RPM peuvent être déterminées simplement en lisant ces fichiers sans avoir à lire tous les RPM, ce qui est très appréciable spécialement lors des installations par FTP. Une autre utilisation de ces fichiers est la correspondance des noms de paquets avec ceux des fichiers (par exemple perl vers perl-5.004-6.i386.rpm). Ceci veut dire que si vous voulez inclure des mises à jour de RedHat (voir section inclure les mises à jour) ou ajouter vos propres paquets dans le répertoire RPMS, vous aurez besoin de mettre à jour hdlist et hdlist2. Ceci est décrit plus tard dans reconstruire l'installateur. En dehors de ces fichiers, on trouve les images à partir desquelles l'environnement d'installation est lancé (c'est-à-dire le noyau, l'interpréteur python, anaconda, etc.).
Le répertoire /pub/redhat/linux/updates dispose des mises à jour de toutes les releases de la distribution RedHat depuis la version 3.0.3. C'est l'endroit où vous trouverez les paquets qui ont été mis à jour pour une raison ou une autre. Vous devez tout particulièrement faire attention aux mises à jour de sécurité. Elles sont affichées sur la page des erreurs de RedHat dès qu'une correction est disponible. Les fichiers les plus importants trouvés dans le répertoire updates sont :
drwxrwsr-x 3 root root 4096 Jul 13 10:13 5.2 drwxrwsr-x 3 root root 4096 Jul 13 10:13 6.0 drwxrwsr-x 3 root root 4096 Jul 13 10:13 6.1 drwxrwsr-x 4 root root 4096 Jul 13 10:14 6.2 drwxrwsr-x 4 root root 4096 Jul 13 10:14 7.0 drwxrwsr-x 4 root root 4096 Jul 13 10:14 7.1 drwxrwsr-x 4 root root 4096 Jul 13 10:13 7.2 drwxrwsr-x 3 root root 4096 Jul 13 10:14 7.3 drwxrwsr-x 3 root root 4096 Jul 13 10:14 8.0 drwxrwsr-x 3 root root 4096 Jul 13 10:14 9
La structure de chacun de ces sous-répertoires est similaire à ce qui est décrit dans la section l'organisation de la Redhat 9. Donc, pour chaque version, vous trouverez dans le sous-répertoire en/os/ une série de sous-répertoires représentant les nombreuses architectures ainsi que les sous-répertoires noarch et SRPMS, pour les paquets qui fonctionnent respectivement sur toutes les architectures ou sont sous forme de source.
drwxrwsr-x 2 root root 4096 Sep 23 05:28 SRPMS drwxrwsr-x 2 root root 4096 Aug 28 18:25 athlon drwxrwsr-x 2 root root 8192 Sep 23 05:28 i386 drwxrwsr-x 2 root root 4096 Jul 13 10:14 i486 drwxrwsr-x 2 root root 4096 Aug 28 18:26 i586 drwxrwsr-x 2 root root 4096 Aug 28 18:26 i686 drwxrwsr-x 2 root root 4096 Jul 13 10:14 noarch
La disposition de la distribution 8.0 est pratiquement identique à celle que nous venons de décrire. Les seules différences majeures, à cet égard, se trouvent dans le répertoire images .
Le répertoire images contient les images de disquettes de démarrage et de pilotes, pouvant être copiées sur une disquette si nécessaire. La première image de démarrage est appelée boot.img et est nécessaire lorsque l'installation est exécutée directement depuis le CD-ROM. Si une installation via un disque monté par NFS ou via FTP est envisagée, l'image disque bootnet.img est nécessaire. Les installations par l'adaptateur PCMCIA nécessitent la disquette pcmcia.img. Voir la section installation et les références qui s'y trouvent pour plus de détails. Consultez le fichier README de ce répertoire pour une explication plus détaillée sur les différents fichiers.
Les deux distributions sont pratiquement similaires à ce niveau. Les seuls changements intéressants pour nous (et faciles à remarquer avec une petite inspection de l'arbre principal de la distribution) sont représentés par un répertoire isolinux manquant et quelques modifications sur le répertoire RedHat/base. Le premier changement est dû à la façon dont les CDs d'installation sont rendus amorçables dans les releases précédant la 8.0 (l'« émulation disquette » a été changée en « pas d'émulation » pour la release 8.0), alors que le second est un effet de la migration du format du fichier comps en XML pour les Redhat suivant la 8.0 (ce qui explique pourquoi il a été renommé comps.xml). Le fichier Redhat/base/comps est, en fait, un simple fichier texte avec une syntaxe peu flexible dans les releases RedHat 7.3 et précédentes.
Pour la release 6.2 (pub/redhat/linux/6.2/en/os/), la dernière des six séries, l'organisation est la suivante (celle des précédentes releases est à peu près similaire, mais pas complètement) :
alpha/ i386/ sparc/
Quant à elle, la racine du répertoire i386 ressemble à ceci :
-rw-r--r-- 1 root root 18385 Sep 7 1999 COPYING -rw-r--r-- 1 root root 3400 Mar 8 2000 README -rw-r--r-- 1 root root 16300 Mar 8 2000 RELEASE-NOTES -rw-r--r-- 1 root root 1908 Sep 25 1999 RPM-GPG-KEY drwxr-xr-x 1 root root 512 Sep 27 15:22 RedHat drwxr-xr-x 1 root root 17408 Sep 27 15:22 SRPMS -rwxr-xr-x 1 root root 538 Sep 26 1999 autorun -rwxr--r-- 1 root root 2048 Mar 9 2000 boot.cat drwxr-xr-x 1 root root 512 Sep 27 15:22 doc drwxr-xr-x 1 root root 512 Sep 27 15:22 dosutils drwxr-xr-x 1 root root 512 Sep 27 15:22 images drwxr-xr-x 1 root root 512 Sep 27 15:22 misc
Dans les paragraphes suivants, je listerai seulement les différences entre les nouvelles releases ; ce qui n'est pas explicitement mentionné est resté (ou est supposé être resté) inchangé.
Le répertoire doc contient une foule d'informations. Plus important, le manuel d'installation RedHat peut être trouvé au format HTML dans le répertoire ou sur le site web de RedHat (Guide d'installation RedHat 6.2). Ensuite, il y a le guide de référence et le guide de démarrage (« Getting started »). La documentation pour les releases 7.x/8.0/9 est sur un CD séparé (dans un arbre différent, sur le site ftp).
Le répertoire images contient les images de disquettes de démarrage qui peuvent être copiées sur une disquette si nécessaire, comme pour les 9, 8.0 et 7.3. Voir la section installation et ses références pour les détails. Le répertoire misc contient sources et exécutables d'un certain nombre de programmes nécessaires pour l'installation.
La plus importante partie de l'arbre du répertoire est (encore) située à la racine du répertoire RedHat :
drwxr-xr-x 2 root root 28672 Oct 26 09:01 RPMS drwxr-xr-x 2 root root 4096 Oct 26 09:01 base -rw-r--r-- 1 root root 0 Jan 19 1999 i386 drwxr-xr-x 6 root root 4096 Oct 26 09:01 instimage
Le répertoire RPMS devrait déjà être connu de vous. Voir la section les paquets RPM pour plus d'informations. Le répertoire base conserve différents fichiers nécessaires lors de l'installation, comme pour les releases 7.3, 8.0 et 9. Les seules différences visibles sont représentées par un fichier hdlist et un fichier manquant stage2.img dont les fonctionnalités devront être assurées par les fichiers inclus dans le répertoire instimage. Il contient, en fait, un vrai système de fichiers avec un certain nombre de programmes et de bibliothèques partagées durant la procédure d'installation.
Le répertoire updates est vraiment similaire à celui décrit pour la release 9, la seule différence étant qu'il comporte davantage de répertoires en relation avec l'architecture.