Accueil

Utiliser les tagfiles

Par mushroom.

Ce document est placé dans le Domaine Public.

Le présent article reprend la partie qui était originellement consacrée aux tagfiles dans la première version de Linux From Slack. Il a été en effet jugé plus opportun et plus utile de la traiter séparément.
Grand merci à Aymeric, qui a fourni toute la matière sans laquelle ladite partie et donc le présent document n'auraient pas vu le jour.

Sommaire

Introduction

Les tagfiles composent en quelque sorte le « génome » de la Slackware. En effet, ce sont les fichiers qui lors de son installation définissent le statut des paquets, et décident ainsi si oui ou non ils doivent être installés. C'est par exemple à partit d'eux que la sélection des paquets du mode Newbie et la pré-sélection du mode Expert sont obtenues.

Tout l'intérêt de la chose est bien sûr que le contenu de ces fichiers est modifiable. Par conséquent on peut facilement personnaliser l'installation de la Slackware en excluant tous les paquets qu'on utilise pas, voir même créer différents profils d'installation selon l'usage qui sera fait du système (serveur, bureau, etc. ). Le propos de cet article est tout simplement vous montrer comment jouer avec tout ça.

Localisation et morphologie

Première chose à faire, vous saisir de votre premier CD Slackware et monter la chose en tant que système de fichiers (sur /mnt/cdrom, pour la suite du document). Puis une fois cela effectué, tapez la commande suivante (le $ introduit les lignes que vous devez écrire dans votre terminal, les autres étant la sortie résultante) :

Nous nous basons sur le jeu de CD, mais bien entendu tout ce qui est dit ici peut être mis en pratique avec le DVD.

$ ls -1 /mnt/cdrom/slackware/*/tagfile
/mnt/cdrom/slackware/ap/tagfile
/mnt/cdrom/slackware/a/tagfile
/mnt/cdrom/slackware/d/tagfile
/mnt/cdrom/slackware/e/tagfile
/mnt/cdrom/slackware/f/tagfile
/mnt/cdrom/slackware/k/tagfile
/mnt/cdrom/slackware/l/tagfile
/mnt/cdrom/slackware/n/tagfile
/mnt/cdrom/slackware/tcl/tagfile
/mnt/cdrom/slackware/y/tagfile

Vous remarquerez immédiatement que dans chaque catégorie de paquets se trouve un de ces fameux fichiers tagfile. À présent, nous allons regarder succintenement le contenu d'un de ceux-ci (les dix premières lignes, pour être exacts) avec la commande head :

$ head /mnt/cdrom/slackware/a/tagfile  
aaa_base:ADD
aaa_elflibs:ADD
aaa_terminfo:REC
acl:ADD
acpid:REC
apmd:REC
attr:ADD
bash:ADD
bin:ADD
bzip2:ADD

Comme vous le voyez le principe est très simple, pour chaque nom de paquet présent, une priorité est introduite par ":". Nous avons donc un tagfile par catégorie qui référence une priorité pour chacun des paquets de cette catégorie. Si vous éditez plusieurs tagfiles, vous vous rendrez vite compte qu'il existe quatre niveaux de priorité différents. Voici à quoi ils servent (par degré décroissant de priorité) :

À ce stade, vous l'avez certainement deviné la marche à suivre pour personnaliser l'installation de notre chère Slackware. Il suffit bien évidemment d'éditer le tagfile de chaque catégorie de paquets sélectionnée lors de l'installation, puis de modifier les priorités. La plupart du temps, vous mettrez ADD pour tout ce que vous voulez installer et SKP pour le reste, ainsi le processus d'installation sera beaucoup plus rapide.

Un problème demeurre cependant, nous ne pouvons pas écrire à même notre CD. Il nous faut par conséquent trouvez un autre moyen pour introduire nos personnalisations dans le processus d'installation. Par bonheur, deux méthodes ont justement été prévues à cet effet.

Première méthode : le répertoire alternatif

C'est sans doute la plus pratique et la plus simple à mettre en oeuvre. Il s'agit simplement de créer une arborescence semblable à celle présentée supra avec les tagfiles préalablement modifiés par nos soins. À noter qu'il n'est pas nécessaire de reprendre toutes les catégories, les tagfiles par défaut s'appliquant si les nôtres ne sont pas trouvés pour telle ou telle catégorie.

Voici par exemple, ce que donnerait une arborescence redéfinissant les profils d'installation des catégories A, AP et N, et ayant pour racine un répertoire arbitrairement nommé « mes_tags » :

$ ls -1 mes_tags/*/*
mes_tags/ap/tagfile
mes_tags/a/tagfile
mes_tags/n/tagfile

Comme vous le voyez, chaque sous-répertoire ne contient que le tagfile de la catégorie concernée.

Une fois notre arborescence élaborée, ne reste plus qu'à stocker mes_tags sur une disquette, une clé USB (cas que nous prendrons pour la suite), voir sur une partition du disque dur qu'on préservera lors de l'installation.

Après cela, il nous suffira de booter sur le CD d'installation puis -- avant d'exécuter setup -- d'y monter notre clé (nous supposons ici qu'elle sera le périphérique sda1, adaptez à votre cas) sur un point de montage créé pour l'occasion (pour être sûrs de ne pas parasiter l'installation) :

$ mkdir /ma_cle
$ mount -t auto /dev/sda1 /ma_cle

Puis lorsqu'arrivera le moment, nous choisirons la méthode d'installation Tagpath et nous indiquerons comme chemin /ma_cle/mes_tags. Nos tagfiles s'appliquerons alors en priorité sur ceux de la Slackware et le tour sera joué !

Seconde méthode : la modification des images

Cette méthode est sensiblement plus difficile à mettre en oeuvre, et ne sera probablement utile que pour les administrateurs voulant déployer sur un large parc des systèmes aux profils différents à partir d'un même jeu de CD. Elle suppose en effet de déconstruire les images ISO des CDs Slackware sur votre disque dur, avant d'y apporter vos modifications puis de les reconstruire. Cela débordant le cadre de cet article, nous ne traiterons pas des opérations de déconstruction/reconstruction des ISO (celles-ci sont documentées dans le fichier isolinux/README.TXT du premier CD, dont la traduction est ici disponible).

Cette nous allons placer nos tagfiles sagement à côté de ceux de la Slackware. La seule chose que nous devrons décider c'est quelle extension nous allons donner à ceux-ci, car elle devra être la même dans toutes les catégories que nous voudrons personnaliser (là encore, les tagfiles de la Slackware s'appliquent par défaut). Rien n'empêche d'ailleurs de créer plusieurs profils, il suffit pour cela d'utiliser plusieurs extensions. Dans l'exemple suivant, nous avons créé un profil « serveur » et un profil « bureau » pour les catégories A et AP :

$ ls -1 slackware/a/tagfile* slackware/ap/tagfile*
slackware/a/tagfile
slackware/a/tagfile.bureau
slackware/a/tagfile.serveur
slackware/ap/tagfile
slackware/ap/tagfile.bureau
slackware/ap/tagfile.serveur

Une fois tout cela mis en place et nos images reconstituées, il nous suffira de booter dessus puis, lorsque viendra le choix de la méthode d'installation, nous n'aurons qu'à sélectionner Custom et indiquer le nom de l'extension désirée : serveur pour notre profil de serveur, bureau pour notre profil de bureau (d'où l'intérêt de prendre des extensions explicites quant à leur usage). Ainsi nous obtiendrons facilement un système modulé aux petits oignons.

Conclusion

Par l'intermédiaire des tagfiles, la Slackware permet de choisir avec finesse et efficacité les composants à installer, ouvrant ainsi un large champ de personnalisations. Nous espérons que cet article, en exposant les bases de l'utilisation de ces fameux tagfiles, vous aura donné envie d'investir ce champ et vous permettra de vous simplifier la vie -- sinon de vous amuser.

Thèmes : #articles #installation #mushroom #tagfile

Sauf indication contraire, ce document est placé sous licence CC-BY-SA 3.0.