se3-WPKG Installation automatisée d`applications sur les clients win
Transcription
se3-WPKG Installation automatisée d`applications sur les clients win
se3-WPKG Installation automatisée d'applications sur les clients win XP ou 2000 d'un réseau Samba Edu 3 Philippe PETER 2007 version du 13 octobre Historique Jean Le Bail a qui l'on doit ce module du Samba Edu 3 écrivait dans un mél du 24 mars 2007 paru sur la liste se3-devel: « J'ai consulté le site wpkg.org ça a l'air très bien ! C'est sûr qu'il faut s'appuyer sur un développement de ce genre pour bénéficier du travail déjà fait, en particulier pour bénéficier de la liste des packages logiciels.Il y a déjà une interface web de gestion de wpkg qui existe : WPKG Web.Il faut vraisemblablement l'adapter pour l'intégrer à l'interface du se3. ... En résumé, la solution wpkg me plaît bien. ... J'aurais besoin de savoir si wpkg est retenu afin d'adapter ce que j'ai fait pour le déploiement des mises à jour Microsoft.En attendant, je suspends le développement de 'Linux Server Update Service'. Bon week-end. Jean » En quelques mois Jean a réalisé le portage de wpkg sur le SE3, en le dotant d'une interface web très ergonomique ce qui permet aux administrateurs de SE3 une simplification importante des tâches parfois ingrates et longues liées à l'installation de logiciels. De plus Jean a intégré dans wpkg le Linux Server Update Service qui permet de centraliser sur le serveur SE3 les mises à jour Microsoft et d'automatiser leur déploiement sur les clients du réseau. I Installation de se3-wpkg sur le SE3 En ligne de commande, en étant connecté root sur le SE3: apt-get update et apt-get install se3-wpkg ou à partir de la version 1.11 de SambaEdu, dans l'interface de gestion de SE3 (méthode non testée) : Configuration générale -> Modules -> WPKG (Déploiement d'applications) Lors de son installation wpkg crée les dossiers suivants: /var/se3/unattended/install/wpkg « \\se3\install\wpkg » « Y:\unattended\install\wpkg » /var/se3/unattended/install/packages « \\se3\install\packages » « Y:\unattended\install\packages » /var/www/se3/wpkg Dossier hébergeant la configuration de WPKG Ne pas y faire de modifications au hasard ! Dossier hébergeant les applications ajoutées sur le SE3.Ne pas y faire de modifications au hasard ! Dossier hébergeant l'interface web de WPKG et le fichier L:\install\wpkg-config.bat qui est le script de configuration de se3-wpkg. II Configuration de se3-wpkg pour le réseau Connecté en admin sur un XP il suffit de lancer une fois le script L:\Install\wpkg-config.bat Remarque: wpkg-config.bat permet de créer le job CPAU d'installation du client sur les postes (c'est à dire le processus qui créera la tâche planifiée d'exécution de se3-wpkg sur le poste) et ajoute la ligne de lancement de ce « job » dans le script de login. ATTENTION: dans les captures d'écran noires qui suivent il faut lire C: à la place de L: (car la partition racine du XP (en multiboot avec 10 partitions) sur lequel je travaille est désignée par L:\ ). On valide et le mode verbeux du script permet de suivre précisément les actions effectuées: Une autre fenêtre apparaît: Attendre un peu et: Il est souhaitable ensuite d'installer wpkg sur le client XP (ou win2000) sur lequel on se trouve afin de lancer immédiatement wpkg: Comme indiqué ci-dessus deux fichiers de rapport d'execution de wpkg sur le poste ont été créés conjointement en local sur le poste et sur le serveur SE3. Pour y accèder lire ceci. Dans le cadre rouge ci-dessus figure la commande ajoutée au logon.bat du template de base pour que wpkg soit installé sur les postes automatiquement lors du premier login d'un utilisateur (voir le conseil). Que s'est-il passé lors de l'installation sur le poste? Il y a création du fichier C:\windows\wpkg-client.vbs, qui est la partie cliente de wpkg éxecutée lors de la demande d'exécution de wpkg sur un poste et d'un raccourci sur le bureau d'admin Ce raccourci (qui peut être distribué à un utilisateur quelconque) est destiné à exécuter immédiatement wpkg sur un poste, sans devoir attendre le prochain redémarrage de la machine. Il y a de plus la création d'une tâche planifiée nommée wpkg qui lance le wpkg-clients.vbs à chaque démarrage de la station en tant qu'utilisateur 'adminse3'. L'interface web de WPKG Elle permet par de gérer totalement l'installation d'applications sur le SE3 et de programmer et de surperviser leur déploiement sur les clients XP ou 2000. Dans l'interface web du SE3, constater la présence d'un onglet supplémentaire nommé Applications Windows: IMPORTANT Dans la pratique pour réaliser le déploiement automatisé d'une application sur des machines il va falloir dans l'ordre suivant: 1) Ajouter cette application sur le SE3 2) Déployer l'application sur les parcs Les trois sous-menus Détails (d'un parc, d'une application ou d'un poste) sont destinés à récapituler et surveiller le déploiement des applications sur les machines. III Ajout d'une application sur le SE3 Le menu Ajouter une application permet de télécharger en quelques clics le(s) fichier(s) nécessaire(s) à l'installation automatisée de l'application désirée sur une machine ou un parc de machines. Intéressons nous à la section Mises à jour de la partie supérieure de la page (voir capture suivante): C'est cette zone que la grande majorité des administrateurs va utiliser. Elle permet d'ajouter en quelques clics des applications sur le SE3 réparties en deux catégories STABLES ou A TESTER (en utilisant sans le savoir des scripts « officiels », validés sur SE3). Remarque: une Application est d'abord proposée dans la branche A TESTER et lorsqu'elle a été suffisamment testée elle est considérée comme STABLE. Il ne faut pas craindre d'utiliser une application de la branche A TESTER en la déployant sur quelques machines. J'ai toujours installé les applications A TESTER sans jamais « planter » une machine (au pire l'installation ne s'effectuait pas). Recherchons par exemple les applications STABLES en cliquant sur le bouton correspondant: Il va falloir quelques secondes pour l'affichage de la page afin que s'effectue la comparaison entre les applications déjà présentes et celles proposées sur un serveur situé au CRDP de Caen: Ne pas se préoccuper des deux cases aux dessus de la liste des applications proposées. En ORANGE (avec la case d'installation précochée) apparaissent les applications déjà installées pour lesquelles une mise à jour est disponible. En BLEU sont proposées les applications déjà installés et pour lesquelles aucune mise à jour n'est disponible. En BLANC sont proposées des applications qui ne sont pas installées sur votre SE3. 1) Pour faire uniquement les mises à jour Pour faire les mises à jour des applications déjà installées sur le SE3 on clique clique sur le bouton: situé en bas de page et on obtient (il est toujours agréable de boire un café pendant que la page s'allonge :-) ): ... et finalement en bas de page: Si on clique à nouveau sur : on obtient: Donc en comparant avec la capture initiale on constate que les applications qui figuraient en Orange ont bien été mises à jour sur le serveur SE3. Ainsi en quelques clics et 2 minutes (la durée nécessaire aux différents téléchargements) les applications vlc, sViewer, bureauAdistance, NotepadPlusplus et PdfCreator ont été mises jour sur le SE. Et lors du prochain démarrage des clients XP ou 2000 pour lesquels l'installation de ces applications a été demandé, l'installation avec la dernière version aura lieu. 2) Pour installer une nouvelle application Exemple concret: on souhaite installer l'application winstaller (non installée d'après la capture ci-dessus) Si l'on souhaite obtenir des informations sur l'application il faut cliquer sur l'icône fichier dans la case suivant le nom de l'application (colonne Info Forum). Avec Firefox un second onglet s'ouvrira vous fournissant les informations concernant cette application. (Pour les développeurs potentiels de xml il suffit de cliquer sur le xml pour voir son contenu et s'en inspirer). Pour installer winInstaller sur le SE3 on coche la case: puis on clique sur On obtient un page semblable à: dans l'exemple ci-dessous on peut lire qu'il n'y pas eu de téléchargement de l'exécutable car il est déjà présent sur le serveur et valide (il avait été téléchargé antérieurement pour des tests). La dernière ligne indique que désormais l'application wininstaller est présente sur le SE3 et qu'il va être possible de la déployer sur les clients XP et 2000 du réseau SE3. IV Déploiement d'une application sur les clients XP ou 2000 Cliquons sur déployer sur les parcs pour obtenir un écran semblable à: On constate (cases bleues) que l'installation de UPHClean (correctif de Microsoft visant à résoudre des bugs réseaux) et de time (synchronisation horaire entre le client windows et le SE3) a été demandé pour tous les postes du réseau.. Pour demander l'installation d'une application sur un parc il suffit de cocher la case correspondante: La demande est enregistrée et lors du prochain démarrage des postes du parc choisi (ici parccddp50) l'application winInstaller sera installée. Test immédiat du déploiement sur un poste sans redémarrage Il suffit de cliquer sur l'icône On obtient alors: Ce qui précède est intéressant car la demande de mise à jour de vlc avait été réalisé au début du tutoriel. On valide par Oui pour obtenir: Les actions effectuées par wpkg sur un poste sont enregistrées dans deux fichiers situés dans le dossier: Le fichier nom_du_poste.log contient les informations (avec horodatage de début et de fin) obtenues lors de l'éxecution de wpkg en mode manuel immédiat (la section entourée en rouge deux captures ci-dessus): La ligne soulignée en rouge signifie que l'installation de windows Installer a été ignorée car (voir suite) il était déjà installé sur le poste. La ligne soulignée en bleu signifie que la mise à jour de VLC s'est bien déroulée. La ligne soulignée en magenta signifie que la recherche de mises à jour Microsoft s'est bien déroulée. La ligne finale Code sortie=0 indique qu'aucune erreur n'a été rencontrée lors de l'exécution de wpkg sur le poste. En comparant l'heure de début de fichier et l'heure de fin on peut déterminer la durée de l'exécution de wpkg (ici environ 2 minutes, durée évidemment dépendante de nombreux facteurs). Le fichier nom_du_poste.txt contient des informations sur l'état de chacune des applications disponibles via wpkg sur le poste: Windows Installer 3.1 (v2) ID: winInstaller Revision: 312 Reboot: false Status: Installed L'application Windows Installer est installée! Linux Server Update Service ID: lsus Revision: 2 Reboot: false Status: Installed PDFCreator ID: PDFCreator Revision: 93 Reboot: false Status: Not Installed L'application PDFCreator n'est pas installée (car son installation n'a pas été demandée via l'interface web de wpkg). Remarque: les deux fichiers de rapport sont également enregistrés en local sur le poste dans C:\windows sous les noms wpkg.log et wpkg.txt. Vous touverez également wpkg-client.vbs auquel il ne faut pas toucher ! III Comment surveiller le déploiement via l'interface web? 1 Détail d'un parc Pour avoir une vue d'ensemble du déploiement d'applications. L'absence de rapport pour le poste cdi5new est dûe au fait que sa carte réseau vient de lâcher En cliquant on accède aux détails du poste ou du dernier rapport 2 Détail d'une application Pour connaître tous les postes sur lesquels l'application a été déployé via wpkg. 3 Détail d'un poste Pour savoir quelles sont les applications déployées sur ce poste via wpkg. En cliquant sur les titres on modifie l'ordre d'affichage Ce qui donne l'affichage suivant si on a cliqué sur Version IV Conseils 1) Première installation de wpkg sur un poste Au premier login d'un utilisateur, le client est installé puis exécuté (ce qui entraîne l'installation des applications). Par la suite, l'exécution du client a lieu lors de chaque démarrage du poste sans qu'il soit nécessaire qu'un utilisateur s'authentifie. Du point de vue du fonctionnement, avant d'associer un grand nombre d'applications à un nouveau parc, il est recommandé d'attendre que le client soit installé sur les machines du parc (c'est à dire qu'un rapport soit disponible dans l'interface). Ainsi, il n'y aura pas 50 applications à déployer d'un coup dès le premier démarrage. 2) Comment savoir si wpkg a fini de s'exécuter? A la fin de l'exécution de wpkg-client.js, deux fichiers .log et .txt sont écrits en local sur le poste et remontées sur le SE3. C'est la date du fichier .log qui est indiquée dans l'interface web. a) Un truc pour savoir quand le client a fini : Cliquer sur la date d'un rapport d'un poste puis rafraîchir l'affichage (Touche F5) jusqu'à ce que le fichier de log affiché soit mis à jour. Lorsque c'est le cas, le client wpkg a fini son exécution. b) Autre possibilité: activer le gestionnaire des tâches (Ctrl + Alt + Suppr) Et tant que vous voyez des lignes telles que celles encadrées en rouge, le client wpkg s'exécute. V Eventuels problèmes et leur solution Il faut savoir enfin qu'il y a une temporisation de 30 s entre la fin du démarrage d'un poste et le début des installations éventuellement demandées sur ce poste. 1) Options intéressantes Pour avoir plus de détails, il est possible de définir la variable WPKG_OPTIONS dans \\SE3\wpkg\wpkgAvant.bat avec : Set WPKG_OPTIONS=/synchronize /nonotify /debug L'option '/debug' permet d'avoir des rapports plus détaillés. L'option '/force' peut également être ajoutée : Set WPKG_OPTIONS=/synchronize /nonotify /debug /force Avec '/force' , un test est refait par le client pour chaque application afin de vérifier qu'elle est bien installée ou désinstallée conformément à ce qui est demandé dans l'interface web. C'est utile, si par exemple, une application a été installée avec wpkg puis désinstallée à la main sur le poste. Sans /force , wpkg croit qu'elle est toujours installée et ne fait rien. Avec /force , wpkg refait le test pour savoir si l'appli est installée puis agit en conséquence. 2) Il ne passe rien quand on clique sur le raccourci Applications WPKG Lors de l'exécution de wpkg sur un poste la valeur true est inscrite dans la clef HKLM\Software\WPKG\running de base de registre du poste. A la fin de l'exécution cette valeur est repositionnée à false pour permettre ne nouvelle exécution. Il peut arriver que le poste soit arrêté brutalement lors de l'exécution de wpk (coupure de courant, etc...) ce qui laissera la valeur true positionnée et empêchera donc une exécution ultérieure de wpkg. Pour résoudre cet inconvénient Jean a modifié le wpkg-client.vbs pour qu'il remmette à false l'entrée de la bdr s'il s'est écoulé plus de 4 h depuis le dernier lancement. 3) Absence de rapport d'exécution de wpkg pour des postes S'il n'y a pas de rapport disponible, cela peut être dû à un problème de compte adminse3 local au poste dont le mot de passe a expiré ou dont le mot de passe a été changé et n'est plus celui figurant dans le fichier L:\install\installdll\confse3.ini ATTENTION TOUT CE QUI SUIT concerne ce qui reste à intégrer dans la documentation: Réaliser Principe de fonctionnement (demande). Les 2 liens en bleus mettre à jour les fichiers hosts, profile et droits.xml pour prendre en compte les modifications des parcs ou de délégation de droits sur les parcs. Rôle de C:\netinst\wpkg-notempo.txt Utilité de Les deux cases à cocher dans mise à jour des Applis (page 6) La section suivant Mise à jour dans Ajout d'une Application (pour administrateurs voulant intégrer un xml ne provenant pas des source officielles). Remarques intéressantes dans les méls de jean antérieurs au 13.09.07 Application particulière: LSUS jean me signale début octobre que l'interface lsus devrait sensiblement changer Le module de déploiement d'applications sur les postes Windows2000 et XP d'un réseau sambaEdu a été mis à jour : se3-wpkg_0.1-16_i386.deb Il gère maintenant les 'Mises à jour Microsoft' à l'aides du paquet lsus.xml. Les heureux possesseurs d'un serveur SE3 en version 1.11 peuvent appliquer cette mise à jour, à partir de l'interface du SE3 : 'Configuration générale' -> Modules -> WPKG Pour les autres, en ligne de commande : # apt-get update # apt-get install se3-wpkg Pour profiter de la gestion des mises à jour Microsoft, il faut ajouter l'application lsus.xml aux application disponibles sur le serveur. Dans l'interface du SE3 : 'Applications Windows' -> 'Ajouter une application' 'Afficher les mises à jour A TESTER disponibles' puis sélectionner lsus.xml Une fois l'application installée, et en rafraichissant les pages du navigateur, un nouvel onglet 'Mises à jour Microsoft' apparaît. Cliquer sur le bouton 'Mettre à jour à partir des données Microsoft' pour télécharger et décompresser le fichier wsusscn2.cab Enfin, il faut associer l'appli 'lsus' aux postes dont on souhaite gérer les mises à jour Microsoft. Voilà, Y a plus qu'à attendre que les postes concernés redémarrent pour obtenir les rapports sur les mises à jour appliquées et manquantes. Elles pourront alors être téléchargées et déployées... -----------------------------------------------------------------------------------------Après l'installation de lsus.xml, le navigateur ne remet pas forcément à jour les pages qu'il affiche et se contente d'afficher les pages de son cache. Il ne s'aperçoit donc pas que la configuration a changé. Vider complètement le cache permet de le forcer à récupérer des fichiers à jour. Si on ne veut pas vider tout le cache, authentifié admin sur l'interface web du se3, saisir http://ip.du.SE3:909/wpkg/testConfigWpkg.php puis forcer le rafraîchissement de la page avec F5. Dans le texte qui s'affiche, il doit y avoir : var lsusInstalled = true; lorsque l'appli lsus.xml a été téléchargée sur le serveur. Revenir à la page précédente (interface du SE3) et rafraichir (F5) Le nouvel onglet 'Mises à jour Microsoft' devrait ensuite être visible Rmq. J'ai oublié d'ajouter une entrée 'Mises à jour Microsoft' dans le sous-menu 'Applications Windows' :( Jean bonjour apres etre passé en 1.12 et avoir reinstallé wpkg et isus, j'ai enfin eu l'onglet mise a jour microsoft qui est apparu dans l'interface, mais quand je clique dessus, j'ai le message suivant: xslProc.transform()[Object Error] NaN Error description: le systeme ne trouve pas l'objet spécifié Error number: -2146697210Error message: le systeme ne trouve pas l'objet spécifié Application particulière:Firefox Si firefox est déployé sur les postes avec wpkg la configuration se fait pour tous le réseau dans un seul fichier sur le serveur, en tant qu'admin : \\SE3\install\packages\firefox\firefox-profile.js http://www.etab.ac-caen.fr/serveurmalherbe/se3/wpkg/packages/firefox-profile.js Une fois l'application firefox.xml installée sur le SE3, il y a une interface pour définir la page de démarrage selon l'utilisateur, les groupes auxquels appartient l'utilisateur, le poste, les parcs dont fait partie le poste. Dans la mise à jour firefox 2.0.0.6, le script désinstalle la version antérieure puis installe la version 2.0.0.6 Si le poste est arrêté avant la fin de l'install,il n'y a plus de firefox installé sur le poste. Et en plus on restait dans cet état puisque wpkg.js ne s'exécutait plus. Je pense que ce problème est résolu... A confirmer. A propos de firefox, la conf qui est déployée est particulière parce qu'on peut gérer les profils utilisateurs sans rien déployer dans les /home/users Je n'ai pas eu de retour sur cette fonctionnalité. Allez voir la page :http://se3:909/mozilla_profiles/firefox-se3.php Vous pourrez y définir la page de démarrage que vous souhaitez selon l'utilisateur, les groupes auxquels il appartient,le poste, les parcs auxquels il appartient. L'intérêt est que les modifications prennent effet aussitôt. Au démarrage d'un firefox sur un poste du réseau,il consulte la nouvelle configuration. Pour un paramétrage plus fin (définition de proxy...)il faut modifier le fichier :\\se3\install\packages\firefox\firefox-profile.js Là aussi, les modifications sont prises en compte dès le prochain démarrage d'un firefox,sans n'avoir rien à déployer dans les profil des utilisateurs.
Documents pareils
Déploiement d`applications pour Windows avec WPKG
Elle permet l'installation, la mise à jour et la dés-installation automatique de logiciels.
http://wpkg.org/
L'application WPKG est composée d'un exécutable ( wpkg.js ) et de fichiers de configurat...