« FOG: Création d'une image Fedora » : différence entre les versions
ajout: Préparation de la capture |
|||
(19 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
{{ArticleHead|Adadov | {{ArticleHead|Adadov}} | ||
Pour créer une image qui puisse passer sur différentes plateformes matériel, il faut faire attention à plusieurs détails. | Pour créer une image qui puisse passer sur différentes plateformes matériel, il faut faire attention à plusieurs détails. | ||
Ligne 11 : | Ligne 11 : | ||
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. | 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: | |||
{| class="wikitable" style="margin: 0 auto" width="50%" | |||
!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 == | == Installation de Fedora == | ||
{{Warning|N'oubliez pas la structure du disque !!}} | |||
Pour cette partie, il n'y a rien de particulier à dire. | Pour cette partie, il n'y a rien de particulier à dire. | ||
Ligne 23 : | Ligne 56 : | ||
La création de RPM permet de faciliter le déploiement des modifications que l'on pourrait vouloir apporter à ces modifications. | 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 [[RPM : Création | Si vous optez pour la création de RPM, il vous faudra [[RPM: Création d'un dépôt personnel|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. | 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: | Les détails de la création de ces RPM se trouvent ici: | ||
* [[ | * [[RPM: Création d'un dépôt personnel|Fedora : Création d'un RPM de configuration d'un dépôt personnel]] | ||
== Installation des programmes == | == Installation des programmes == | ||
Ligne 40 : | Ligne 72 : | ||
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. | ||
Ligne 54 : | Ligne 86 : | ||
Pour préparer la capture de l'image, il faut penser à retirer toutes les configurations spécifiques à la machine. | 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 | * Changer le nom de la machine pour un nom générique | ||
* | * Utiliser le script de réinitialisation système [[Réinitialiser une machine Linux]] | ||
== 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#Ajout d.27une nouvelle image|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. | |||
{{Info|titre=Astuce|Vous pouvez paramétrer vos machines pour qu'elles bootent sur PXE par défaut afin de faciliter les captures et déploiements.}} | |||
[[Catégorie:Déploiement]] | [[Catégorie:Déploiement]] | ||
[[Catégorie: | [[Catégorie:Fedora]] |
Dernière version du 7 février 2023 à 12:37
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[modifier | modifier le wikicode]
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[modifier | modifier le wikicode]
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[modifier | modifier le wikicode]
N'oubliez pas la structure du disque !! |
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[modifier | modifier le wikicode]
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[modifier | modifier le wikicode]
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[modifier | modifier le wikicode]
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.
Driver manquant ? Si une machine finit sur le shell de dracut, essayez la commande dracut-mount. Dans le cas où elle répondrait qu'il n'y a pas de disque, il vous manque un driver contrôleur. |
Une fois vos drivers listés, il vous suffira de recompiler votre initramfs.
Pour recompiler uniquement le initramfs du kernel utilisé :
[root@linux] # | dracut -fv | dblclick to copy |
Pour recompiler tous les initramfs présents sur la machine :
[root@linux] # | for initramfs in /boot/initramfs-*; do dracut -fv ${initramfs}; done | dblclick to copy |
Pour plus d'informations sur dracut : Utilisation de dracut. |
Préparation de la capture[modifier | modifier le wikicode]
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
- Utiliser le script de réinitialisation système Réinitialiser une machine Linux
Capture de l'image[modifier | modifier le wikicode]
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.
Astuce Vous pouvez paramétrer vos machines pour qu'elles bootent sur PXE par défaut afin de faciliter les captures et déploiements. |