-
Notifications
You must be signed in to change notification settings - Fork 1
FR Création d'images de base
A ce stade, on considère que vous avez scrupuleusement suivi le Guide d'installation et tout s'est déroulé sans erreur ! C'est déjà très bien et vous verrez que ça vaut le coup ! Vous avez donc un serveur prêt à assouvir tous vos désirs, avec une base de données toute fraîche.
pyddlaj est super, mais comme tout outil de déploiement d'OS, il a besoin de postes bien préparés. Voici les quelques points qu'il faut respecter
- Être sous Windows. Je sais c'est moche. En même temps, cela constitue toujours une majorité du parc informatique. Le déploiement de Windows est plus complexe aussi, mais qui peut le plus, peut le moins. Le déploiement de Linux fera partie d'une prochaine version.
- Avoir plusieurs postes du même modèle. Sinon, l'intérêt du clone est quand même limité. Il est possible de faire quelque chose de plus générique avec SYSPREP, les licences, les pilotes, et tous les scripts qui vont avec mais c'est beaucoup plus complexe, et décourageant au début.
- Avoir une version pro de Windows, une clé MAK pour les licences XP et supérieur, et idéalement un serveur KMS pour les postes sous Seven et supérieur (vous n'avez plus de Vista quand même ! Si?...).
- Avoir tous les pilotes correspondants au matériel correctement installés.
- Avoir fait les mises à jour, installé les logiciels que l'on souhaite rendre disponibles aux utilisateurs.
- Les antivirus sérieux avec gestion centrale, n'aiment pas trop être clonés. C'est pourquoi il vaut mieux ne pas en installer. Pour une protection minimum indépendante, on peut installer Microsoft security essentials ou autre antivirus gratuit.
- Ne pas être joint dans le domaine. Les scripts utilisés ne font que des jointures aux domaines. Les autres situations ne sont pas gérées. On pourrait sans doutes mieux faire, mais c'est un début.
Il faut ensuite attacher le poste dit au serveur. Rappel des points importants vu dans le Guide d'installation
- Avoir le poste déclaré dans le DNS dans la zone de recherche directe ET inverse.
- Avoir son serveur DHCP parmétré correctement avec les entrées pour le PXE.
Une fois tous ces éléments réglés, redémarrez le poste et allez dans le BIOS pour régler le boot sur le réseau par défaut. Nul besoin de revenir en arrière, Pyddlaj est intelligent. Il sait quand un poste a besoin de démarrer sur le disque dur ou sur le réseau. Dans le doute, le poste sera toujours démarré sur le disque dur.
Une fois le boot par réseau activé, le poste tente d'accéder au serveur au prochain démarrage. On vérifie à ce moment si tout a été bien paramétré sur le serveur DHCP. Un boot réussi doit afficher :
Trying to load: pxelinux.cfg/default ok
En cas de problème à cette étape, voyez du côté de la config DHCP. La touche pause peut être un bon atout pour figer l'affichage.
Ensuite le reste de l'OS se charge.
Pyddlaj se lance automatiquement et fait les opérations dans cet ordre.
- Détecte le matériel
- Recherche l'existence du poste dans la base par son adresse MAC, puis sur le nom DNS.
- Crée si besoin l'enregistrement de l'ordinateur dans la base avec les infos trouvées, ainsi que les partitions. Si aucun enregistrement DNS ne correspond la base ne peut pas être mise à jour. Un message s'affiche pendant 30 secondes avant de démarrer sur le disque dur.
Exemple de poste inexistant dans la base et sans entrée dans le serveur DNS (Poste virtuel sur hôte vmware) :
Connection OK
************************************************
Détection du système
mac: 00:50:56:9f:42:76
uname: ('Linux', 'vmtest1', '3.2.0-4-686-pae', '#1 SMP Debian 3.2.57-3+deb7u1', 'i686', '')
ip: 10.11.202.39
proc: Intel(R) Xeon(R) CPU E5645 @ 2.40GHz
Machine : i686
dns :
**********************************************
Mémoire :
Total : 2074476 kB
Free: 1871436 kB
**********************************************
CPU : Intel(R) Xeon(R) CPU E5645 @ 2.40GHz
Nombre de processeurs : 2
**********************************************
Device:: /sys/block/sda, Size:: 80.0 GiB
Recherche sur l'adresse MAC : None
!! No DNS record correspond to your IP !!
The system seems bootable I Copy local boot PXE File
Dans ce cas, le poste n'est pas ajouté mais il sera redémarré sur le disque local malgré tout, car il a détecté une partition bootable.
Pour démarrer à nouveau sur Pyddlaj, il faudra manuellement effacer le fichier correspondant à son adresse mac dans le dossier pxelinux : /srv/tftp/ltsp/i386-osdeploy/pxelinux.cfg/
Si tout se passe bien, le poste est déclaré dans la base et redémarre sous Windows.
Dans l'interface Web notre compteur général, passe à 1.
Une fois le poste correctement détecté, celui-ci apparait dans l'interface web.
- Depuis la page d'accueil, cliquez sur le lien Passer en état création d'image de base.
- Cliquez sur la seule machine listée puis Valider
- Les modifications sont prises en compte, il ne reste plus qu'à redémarrer le poste.
Une chose à connaitre ici est le terme technique Distribution. Par distribution il faut comprendre un ensemble d'images de bases (donc de partitions) qui constituent un OS. Par exemple, pour Windows XP on a 1 partition qui contient l'ensemble du système alors que pour un windows 8.1 on a 2 partitions. Une pour le boot et une avec le système. Quand linux, sera implémenté, il s’agira de tout point de montage déclaré.
Au démarrage pyddlaj détecte que le poste doit créer une image de base. Il peut se passer plusieurs choses en fonction de ce que le programme sait déjà sur le poste ou pas. Comme la base est vide, il va poser des questions simples pour terminer la tâche.
Ici on part d'une exemple d'une machine VMware virtuelle sous Windows 8.1.
Ordi trouvé dans la base
**********************************************
Détection des disques et partitions
**********************************************
**********************************************
Les partitions {'/dev/sda': {'num': 0, 'PPartitions': [{'num': 1, 'fs_type': 'ntfs', 'name': None, 'size': 334}, {'num': 2, 'fs_type': 'ntfs', 'name': None, 'size': 48829}, {'num': 3, 'fs_type': 'ext4', 'name': None, 'size': 32754}], 'size': 80.0}}
**********************************************
***********************************************
Etat du poste dans la base : idb
***********************************************
Les disques : {u'/dev/sda': {'num': 0, 'size': 80}}
Images de bases associées : []
Je n'ai pas trouvé d'image de base associé à cette machine.
Que voulez-vous faire pour ce poste ?
[0]: Associer une distribution existante
[1]: Créer une nouvelle distribution
choix :
- Comme on a rien on choisi 1
***********************************
* Add distribution *
***********************************
Which os is installed on this host ?
[1] : Windows95
[2] : Windows98
[3] : WindowsME
[4] : WindowsNT
[5] : Windows2000
[6] : WindowsXP
[7] : Windows2003
[8] : Windows2003_x64
[9] : WindowsVista
[10] : WindowsVista_x64
[11] : Windows7
[12] : Windows7_x64
[13] : Windows2008
[14] : Windows2008_x64
[15] : Windows8
[16] : Windows8_x64
[17] : Linux
[18] : Linux_x64
Choice :
Dans la longue liste on choisi notre OS. Ici 16
Enter name for this distribution
Adding computer model is a good idea for easier reference (ex : Fujitsu Esprimo P2520 winxp SP3 2014): Vmware win8.1 RAT
Enter distribution version (SP1, R2, Lenny, ...) : U1
Continuez l'interrogatoire. Pas trop complexe. Trouvez une politique de nommage rigoureuse pour retrouver facilement la correspondance des distributions et des postes. Ici il s'agit d'un poste virtuel Vmware en Windows8.1 U1 avec les outils d'administration à distance (RAT).
On passe ensuite à la question sur les partitions. Il faut attribuer une image de base à chaque partition qui fait partie de la distribution.
***********************
Disk num 0
***********************
*******************
Partition num 1
*******************
Choose one parition
[1]: 1 type fs: ntfs size : 334MB
[2]: 2 type fs: ntfs size : 48829MB
[3]: 3 type fs: ext4 size : 32754MB
choice : 1
Filename for partition backup. example : manufacturer/model/osname/sdax.pc
Enter partition's backup filename : vmware/windows81_RAT/sda1.pc
Partition name
-For windows Vista and above you must type keyword 'boot' for the boot partition (ex : win81_boot)
-For linux distributions you must type the mount point of the partition
partition name : win81_boot
Entrez le chemin complet de l'image de base. Par convention on termine par .pc car partclone est utilisé. Le nom de la partition mérite une explication. Sur les distributions Windows à partition multiple, il faut différentier la partition de démarrage et la partition système. Pyddlaj reconnait par le mot clé boot présent dans le nom de la partition de démarrage.
Faites de même avec les autres partions de la distribution. Pensez bien a saisir le même chemin pour chaque partition.
Confirm for this partition (Y/N) ? Y
Other partition to add (Y/N) ? Y
*******************
Partition num 2
*******************
Choose one parition
[1]: 2 type fs: ntfs size : 48829MB
[2]: 3 type fs: ext4 size : 32754MB
choice : 1
Filename for partition backup. example : manufacturer/model/osname/sdax.pc
Enter partition's backup filename : vmware/windows81_RAT/sda2.pc
Partition name
-For windows Vista and above you must type keyword 'boot' for the boot partition (ex : win81_boot)
-For linux distributions you must type the mount point of the partition
partition name : win81_sys
Confirm for this partition (Y/N) ? Y
Other partition to add (Y/N) ? N
On répond N après avoir saisi la dernière partition de la distribution.
Another distrib on this computer you want to add (Y/N) ? N
Comme on a pas d'autre distribution sur cette machine, on répond N
Sauvegarde de la table des partitions
Sauvegarde MBR
1+0 records in
1+0 records out
446 bytes (446 B) copied, 0.00163331 s, 273 kB/s
Sauvegarde de la partition
Warning: Partclone can't save output to stdout with ncurses interface.
Partclone v0.2.48 http://partclone.org
Starting to clone device (/dev/sda1) to image (-)
Reading Super Block
Elapsed: 00:00:01, Remaining: 00:00:00, Completed: 100.00%
Total Time: 00:00:01, 100.00% completed!
done!
File system: NTFS
Device size: 350.2 MB
Space in use: 305.6 MB
Free Space: 44.6 MB
Block size: 4096 Byte
Used block : 74613
Elapsed: 00:00:14, Remaining: 00:00:00, Completed: 100.00%, Rate: 1.31GB/min,
current block: 85503, total block: 85503, Complete: 100.00%
Total Time: 00:00:14, Ave. Rate: 1.3GB/min, 100.00% completed!
Syncing... OK!
Partclone successfully cloned the device (/dev/sda1) to the image (-)
Sauvegarde de la partition
Warning: Partclone can't save output to stdout with ncurses interface.
Partclone v0.2.48 http://partclone.org
Starting to clone device (/dev/sda2) to image (-)
Reading Super Block
Elapsed: 00:00:01, Remaining: 00:00:00, Completed: 100.00%
Total Time: 00:00:01, 100.00% completed!
done!
File system: NTFS
Device size: 51.2 GB
Space in use: 14.3 GB
Free Space: 36.9 GB
Block size: 4096 Byte
Used block : 3492569
Elapsed: 00:00:04, Remaining: 00:09:13, Completed: 0.72%, 1.54GB/min,
current block: 25068, total block: 12500223, Complete: 0.20%
- La sauvegarde sur le serveur commence, pour toutes les partitions déclarées. Les images sont compressées à la volée pour réduire l'espace disque et la trafic réseau. Grâce à pigz tous les coeurs sont utilisés pour la compression. On a ainsi des super taux de transfert entre 1.5 et 2 GB/min pour 2 coeurs. Une fois la sauvegarde terminée pyddlaj repasse le poste en état installé et redémarre sur le disque dur.
Génial non ?