« FOG: Création d'une image Fedora » : différence entre les versions

De Adadov.net wiki
Correction du driver ahci
Ligne 73 : Ligne 73 :


Il faut donc éditer le fichier {{Path|/etc/dracut.conf}} pour y ajouter la ligne suivante:<syntaxhighlight lang="text">
Il faut donc éditer le fichier {{Path|/etc/dracut.conf}} pour y ajouter la ligne suivante:<syntaxhighlight lang="text">
add_drivers+="ahci sata-nv"
add_drivers+="ahci-platform sata-nv"
</syntaxhighlight>Les drivers ahci et sata-nv sont des contrôleurs SATA courants, ce sont ceux utilisés sur les machines que j'avais à déployer. En ajoutant ici tous les drivers des contrôleurs de destination, vous aurez dans votre image un initramfs qui pourra amorcer votre système sur toutes les machines de destination.
</syntaxhighlight>Les drivers ahci et sata-nv sont des contrôleurs SATA courants, ce sont ceux utilisés sur les machines que j'avais à déployer. En ajoutant ici tous les drivers des contrôleurs de destination, vous aurez dans votre image un initramfs qui pourra amorcer votre système sur toutes les machines de destination.
{{Info|titre=Driver manquant ?|Si une machine finit sur le shell de dracut, essayez la commande dracut-mount.
{{Info|titre=Driver manquant ?|Si une machine finit sur le shell de dracut, essayez la commande dracut-mount.

Version du 12 novembre 2018 à 12:30

Ecrit Par : Adadov

Pour créer une image qui puisse passer sur différentes plateformes matériel, il faut faire attention à plusieurs détails.

Cette documentation prend en compte:

  • Les modifications du initramfs pour supporter d'autres contrôleurs.
  • La création de RPM pour le déploiement des configurations globales

Préparation de l'environnement

Pour modèle, vous pouvez utiliser aussi bien une machine physique qu'une machine virtuelle.

Pour le présent document, c'est une machine physique qui a été utilisée, une mise à jour avec une machine virtuelle sera faite prochainement.

Structure du disque

La structure du disque est un point important pour le déploiement.

J'ai choisi de ne pas utiliser LVM afin d'avoir une visibilité complète sur les partitions et leurs contenus depuis FOG. Mais ce n'est pas obligatoire.

Cependant un point reste important, plus l'espace disque utilisé par les partitions sera important, plus il faudra des disques de grande capacité pour les stations déployées. Il sera compliqué voir impossible de déployer sur des machines ayant des disques de capacité inférieur à l'espace utilisé par la totalité des partitions.

Dans mon image j'ai réussi à limiter l'espace total à ~23Go.

J'ai utilisé la structure suivante:

Partition Taille Point de montage
/dev/sda1 600 Mo /boot
/dev/sda2 2 Go swap
/dev/sda3 15 Go /
/dev/sda4 5 Go /home

Installation de Fedora

Pour cette partie, il n'y a rien de particulier à dire.

L'installation se fait via les méthodes standards.
Vous pouvez utiliser un fichier Kickstart si vous le souhaitez pour passer plus rapidement sur cette partie.

Paramétrages de Fedora

Pour cette partie, j'ai fait le choix de créer des RPM. On peut très bien choisir de faire les modifications une fois pour toutes dans le modèle.

La création de RPM permet de faciliter le déploiement des modifications que l'on pourrait vouloir apporter à ces modifications.

Si vous optez pour la création de RPM, il vous faudra créer un dépôt personnalisé pour les déployer facilement sur vos machines.

Mon modèle est paramétré via 2 RPM, un pour le déploiement du dépôt et l'autre pour la configuration du système.

Les détails de la création de ces RPM se trouvent ici:

Installation des programmes

Pour tous les programmes à installer, il suffit de les installer normalement via DNF ou directement via leurs processus d'installation.

Ajout du support de contrôleurs supplémentaire

Pour supporter des contrôleurs supplémentaires, il faut les intégrer dans le initramfs.

C'est Dracut qui s'occupe de compiler le initramfs dans les dernières version de Fedora. Il faut donc utiliser les options de configuration de Dracut pour les intégrer.

Il faut donc éditer le fichier /etc/dracut.conf pour y ajouter la ligne suivante:

add_drivers+="ahci-platform sata-nv"

Les drivers ahci et sata-nv sont des contrôleurs SATA courants, ce sont ceux utilisés sur les machines que j'avais à déployer. En ajoutant ici tous les drivers des contrôleurs de destination, vous aurez dans votre image un initramfs qui pourra amorcer votre système sur toutes les machines de destination.

Une fois vos drivers listés, il vous suffira de recompiler votre initramfs.

Pour recompiler uniquement le initramfs du kernel utilisé :

[root@linux] # dracut -fvdblclick to copy

Pour recompiler tous les initramfs présents sur la machine :

[root@linux] # for initramfs in /boot/initramfs-*; do dracut -fv ${initramfs}; donedblclick to copy

Préparation de la capture

Pour préparer la capture de l'image, il faut penser à retirer toutes les configurations spécifiques à la machine.

  • Changer le nom de la machine pour un nom générique
  • Supprimer les clés machine SSH pour qu'elles soient générées au premier boot après déploiement

Capture de l'image

La capture de l'image se demande via l'interface web de FOG.

Si vous n'avez pas encore enregistré la machine qui sert de modèle, il vous faudra commencer par ce point: FOG:Utilisation de base.

Une fois fait, vous devrez créer l'image dans FOG et l'associée à la machine.

Le nom que vous donnerez à votre image doit vous permettre d'identifier facilement son contenu.

Le type d'image que j'ai utilisé est "Multiple Partition Image - Single Disk" afin de capturer la totalité des partitions, le MBR et la structure du disque.

Une fois fait, dans le détails de la machine, vous pourrez demander sa capture via la section "Tâches basiques".

Il ne vous restera plus qu'à booter la machine via PXE pour que la capture se lance automatiquement.