Dans la partie précédente, nous avons vu comment déployer l’agent d’une manière rapide et facile. Cependant ce mode de procédé nous oblige d’avoir tous les postes clients allumés au moment de déploiement, ce qui n’est souvent pas le cas dans les grandes structures. Pour palier à ce problème nous allons voir comment effectuer cette tâche avec un petit script de démarrage.

1 La préparation du pacquage

Pour commencer, téléchargez un petit logiciel qui nous permettra de préparer le package contenant le fichier d’installation de l’agent avec les paramètres prédéfinis: OCSNG_WINDOWS_PACKAGER_1.02.zip

On aura besoin d’installateur de l’agent également: OCSNG_WINDOWS_AGENT_4061

Récupérez le certificat «cacert.pem» sur votre serveur (si vous avez suivi mon tuto sur le télé-déploiement, il se trouve dans /etc/apache2/ssl, sinon à vous de trouver)

Dans tous les cas renommez le en «cacert.pem»

Décompressez les 2 fichiers téléchargés précédemment

Exécutez le fichier «OcsPackager.exe» qui se trouve dans le dossier OCS Inventory NG Packager:

Section “Files and Options” :

  • Sur la ligne “Exe File”, sélectionnez votre fichier OcsAgentSetup.exe.
  • Sur la ligne “Certificate file”, selectionnez votre fichier cacert.pem, si vous souhaitez utiliser la fonction de télé déploiement.
  • La partie “Other files” permet de mentionner des fichiers additionnels qui seront copiés dans le dossier de destination.
  • Sur la ligne “Command line options” vous devez saisir tous les paramètres nécessaires à l’installation du programme OcsAgentsetup.exe (par ex. /server:10.43.16.254 /S). Ne pas oublier le /S pour une installation silencieuse.

Section “Install will run under account” :

  • Sur la ligne “User”, saisissez le nom du compte ayant les privilèges administrateur (soit local soit de domaine). Le caractère “@” est utilisé pour séparer le nom d’utilisateur de celui du domaine dans une structure Active Directory (par ex. administrator@my.domain.com). Pour un domaine NT4, utilisez la syntaxe “domain\user”.
  • Faites bien attention lors de la saisie du mot de passe car aucune vérification n’est effectuée !

Vous devriez obtenir quelque chose ressemblant à ceci

Cliquez sur le bouton “Next”.

Indiquez le dossier de destination. Puis cliquez sur le bouton “Ok”.

À ce moment des fenêtres vont apparaître brièvement lors de la génération de ocspackage.exe.

Renommez le fichier «Ocslogon.exe» qui se trouve dans le dosser OCS Inventory NG pour Windows en «adresse_de_votre_serveur.exe» (par ex «10.43.16.254.exe» ou «ocsinventory.domain.tld.exe»). En effet cela permet de passer en paramètre l’adresse du serveur sans le saisir chaque fois. «Ocslogon.exe» vérifie si l’agent est déjà installé sur le poste dans le cas échéant, il va le télécharger à partir du serveur. (On mettra l’agent sur le serveur dans la section suivante).

Placez ce fichier dans un répertoire réseau accessible à tout le monde.

Créer un fichier .bat qui va s’exécuter au démarrage de chaque poste. Ce fichier va exécuter «Ocslogon.exe» (renommé).

Ce fichier doit ressembler à quelque chose comme ce-ci:

@echo off

Echo Demarrage de OCS Inventory … Patientez SVP …

net use w: \\loire\netlogon /persistent:no  //on crée un lecteur réseau ou se trouve notre fichier «Ocslogon.exe»(10.43.16.254.exe)

w:\10.43.16.254.exe /S /NP /DEBUG /INSTALL //on l’execute avec les parametres données

Echo Installation Faite ! Merci de votre patience.

net use w: /delete //supression de lecteur réseau

N’oubliez pas d’enlever les commentaires.

Placez «fichier.bat» dans le dossier réseau contenant les scripts de démarrage.

2 Deployement d’ocsagent.exe

Maintenant, nous devons mettre à disposition de nos postes clients l’agent. Pour cela, nous allons le uploider sur notre serveur OCS:

Allez dans l’interface web OCS et cliquez sur le bouton . Vous arrivez à la page suivante:

Cliquez sur Parcourir et choisissez votre exécutable de l’agent « ocsagent.exe ». Cliquez sur envoyer.

Remarque : Si une erreur survient juste après l’envoi d’ocsagent.exe sur le serveur, modifiez le fichier « my.cnf » qui se trouve dans /etc/ afin d’augmenter la taille des fichiers autorisée :

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
max_allowed_packet=500M

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
max_allowed_packet=500M

Bien évidement, vous pouvez mettre la taille du paquet qui vous correspond.

Voila, maintenant dès qu’un poste client va s’allumer, il ira vérifier si l’agent est déjà installé; dans le cas contraire, il l’installera.

Remarque : Si une erreur survient juste après l’envoi d’ocsagent.exe sur le serveur, modifiez le fichier « my.cnf » qui se trouve dans /etc/ afin d’augmenter la taille des fichiers autorisée :

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
max_allowed_packet=500M
 
 
[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
max_allowed_packet=500M