Trace: » GLPI et OCS Inventory version classique (pas NG)

Document obsolète, conservé pour archive

GLPI et OCS Inventory version classique (pas NG)

par Jeremie Stoeffler

Installation de EasyPhp

Ce logiciel permet d'avoir un serveur Apache et un serveur MySQL. Son installation est très simple.

Exécutez Easyphp1-8_setup.exe

Acceptez la licence. Choisissez le répertoire d'installation. Cliquez sur Suivant et Installer.

Ensuite effectuez les mises à jour automatiques.

Puis lancez « easyphp.exe ».

Cliquez avec le bouton droit sur l'icône de EasyPhp dans le systray, puis lancez PhpMyAdmin (Configuration/PhpMyAdmin). Choisissez la rubrique « Privilèges » puis « ajouter un utilisateur ».

ocs001.jpg

Cet utilisateur doit avoir tous les droits sur la table. Puis cliquez sur « Exécuter ».

Installation de GLPI

Dézipper l'archive « glpi-0.51.tar.gz » dans le répertoire « C:Program FilesEasyPHP1-8www » si vous avez installer EasyPhp dans le répertoire par défaut.

Cliquez avec le bouton droit sur l'icône de EasyPhp dans le systray, puis sur Web local.

Vous obtenez la fenêtre suivante :

ocs002.jpg

Sélectionnez le dossier « GLPI »

Choisissez le langage

Cliquez sur « installation »

Vérification de la compatibilité de votre environnement avec l'exécution de GLPI

Cette étape va vérifier que vous avez correctement réalisé les pré-requis à l'installation. Si ce n'est pas le cas, il vous sera impossible d'accéder aux étapes suivantes. Un message d'erreur assez explicite vous indiquera les actions à réaliser avant de re-essayer.

ocs003.jpg

Si toutes les vérifications ont été réalisées avec succés, cliquez sur « continuer ».

ocs004.jpg

Vous arrivez alors sur un formulaire vous permettant d'entrer les informations nécessaire à la connection au serveur MySQL.

Dans le champs « Mysql server » entrez le chemin réseau d'accès au serveur, par exemple : localhost, ou mysql.domaine.tld

Dans le champs « Mysql user » entrez le nom d'utilisateur vous permettant de vous connecter au serveur Mysql.

Dans le champs « Mysql pass » entrez le mot de passe associé à l'utilisateur que vous venez d'entrer dans le champs « Mysql user » Ce champs peut être laissé vide si l'utilisateur n'as pas de mot de passe (Il ne sera pas fait de commentaires sur la sécurité d'un tel usage de Mysql car ce n'est pas l'objet de cet article).

Une fois que ces trois champs sont correctement remplis cliquez sur « continuer ».

Là deux possibilités :

  • soit vos paramètres sont valides, auquel cas vous passez à l'étape suivante.
  • soit vos paramètres sont invalides, auquel cas un message d'erreur est affiché, cliquez sur retour pour modifier vos paramètres de connexion et essayer de nouveau.

ocs005.jpg

Maintenant que vous êtes correctement connecté au serveur MySQL, vous devez créer la base de données destinée à accueillir l'application GLPI. C'est la même base qui sera utilisé par OCSI.

Il ne reste plus qu'à cliquer 2 fois sur « continuer » et l'installation de GLPI est terminée.

Installation de OCS Inventory

Exécutez OCSInventory_3.X_Setup.exe sur un serveur de fichiers de votre réseau.

Installez la version « Full installation » qui installe tout : le Manager, l'Agent, la documentation et les scripts de création de base de données.

Indiquez ensuite le nom du groupe de programme du Menu Démarrer que vous souhaitez utiliser, et les icônes et tâches additionnels (partager le répertoire d'installation est uniquement nécessaire si vous installez l'Agent).

L'installation d'OCS Inventory va créer les répertoires suivants, selon le type d'installation choisie.

Répertoire Commentaire
Application dossier principal pour l'Agent OCSInventory.exe, le Manager for Windows OCSInventoryManager.exe, l'utilitaire ImportCSV.exe et la base de données MS Access OCSInventory.mdb.
Access Journaux des accès au format CSV (si l'Agent est installé).
BIOS Informations BIOS au format CSV (si l'Agent est installé).
Controllers Informations sur les contrôleurs système au format CSV (si l'Agent est installé).
Drives Informations sur les partitions logiques au format CSV (si l'Agent est installé).
Hardware Informations générales et OS au format CSV (si l'Agent est installé).
Icons Fichiers d'icônes de type de machines pour OCS Inventory Manager (si le Manager For Windows est installé).
Inputs Informations sur les périphériques d'E/S au format CSV (si l'Agent est installé).
Memories Informations sur les slots mémoire au format CSV (si l'Agent est installé).
Modems Informations sur les modems au format CSV (si l'Agent est installé).
Monitors Informations sur les moniteurs au format CSV (si l'Agent est installé).
Networks Informations sur les cartes réseau au format CSV (si l'Agent est installé).
Ports Informations sur les ports système au format CSV (si l'Agent est installé).
Printers Informations sur les imprimantes au format CSV (si l'Agent est installé).
Registry Informations sur les valeurs de registre au format CSV (si l'Agent est installé).
Slots Informations sur les slots système au format CSV (si l'Agent est installé).
Softwares Informations sur les logiciels au format CSV (si l'Agent est installé).
Sounds Informations sur les cartes son au format CSV (si l'Agent est installé).
Storages Informations sur les périphériques de stockage au format CSV (si l'Agent est installé).
Videos Informations sur les cartes vidéo au format CSV (si l'Agent est installé).
Docs Fichiers de documentation au format HTML (si la documentation est installée).
css Feuilles de style CSS.
en Documentation en anglais.
fr Documentation en français.
images Images de la documentation.
scripts Menus JavaScript.
Database Spécifications de la base de données OCS Inventory et scripts de création de base de données pour MS SQL Server 7 ou +, MySQL 3.23 ou +, PostgreSQL 7.2 ou + (si le composant Database creation scripts est installé).

Utiliser une base de données MySQL

Il faut tout d'abord créer les tables pour OCSI et les remplir. Pour ce faire, lancez PhpMyAdmin. Sélectionnez la base « Inventoy ». Cliquez sur la rubrique « SQL » et exécutez le script « Create_Tables_MySQL.sql » pour créer les tables, et le script « Populate_Tables.sql » pour les initialiser.

Note : OCS Inventory fonctionne avec MySQL 3.23 et 4.0, mais vous ne pouvez pas utiliser la conformité de Licences ou rechercher des machines ne disposant pas d'un logiciel (car ces versions ne supportent pas l'instruction SQL IN). MySQL 4.1 ou + est requis pour disposer de ces fonctionnalités. De plus, si vous utilisez MySQL 4.1 ou +, MySQL Connector/ODBC 3.51 ne sait pas se connecter à la base de données en utilisant un mot de passe au nouveau format. Vous devez créer un utilisateur MySQL sans mot de passe, ou voir sur le web MySQL comment se connecter en utilisant le nouveau format de mot de passe.

Pour permettre au Manager et à l'utilitaire ImportCSV de se connecter à la base de données, vous devez installer MySQL Connector/ODBC sur les machines qui devront exécuter ces outils. Après ceci, ouvrez « L'Administrateur ODBC » depuis le « Panneau de configuration » de chaque machine et cliquez sur le bouton « Ajouter » dans l'onglet « Source de données système ».

ocs006.jpg

Sélectionnez « MySQL ODBC 3.51 Driver » et cliquez le bouton “Terminer”.

ocs007.jpg

Saisissez le nom de source de données Data Source Name, le nom ou l'IP du Host/Server, le nom de la base de données Database name (le même nom que celle de GLPI), l'utilisateur et le mot de passe user et password, cliquez Test Data Source” pour s'assurer que la connexion fonctionne, et cliquez “OK”.

Puis, exécutez OCS Inventory Manager et allez dans le menu “Préférences/Propriétés de base de données” (à la première utilisation, le Manager exécute cette commande) pour ouvrir ” OCS Inventory Database Configuration”. Vous pouvez aussi exécuter l'utilitaire ImportCSV avec l'option en ligne de commande /CONFIG_DB.

ocs009.jpg

Cliquez sur le bouton “Configure” pour ouvrir les “Propriétés de liaison de données”. Vous devez choisir “Microsoft OleDB Provider for ODBC Drivers”, cliquer le bouton “Suivant”, sélectionner la source de données “Inventory”, saisir le nom et le mot de passe de l'utilisateur MySQL, sélectionner la base de données comme catalogue initial, cliquer le bouton “Tester la connexion” pour vous assurer que tout fonctionne, et valider avec le bouton “OK”.

ocs010.jpg

Laisser le nom d'utilisateur et le mot de passe vide dans l'écran ” OCS Inventory Database Configuration” (car par défaut, MySQL ODBC stocke le nom et le mot de passe d'utilisateur MySQL dans sa configuration) et valider avec le bouton “OK”.

ocs012.jpg

Vous n'avez pas à réaliser ceci sur toutes les machines de votre réseau, car l'Agent utilisera automatiquement le support CSV s'il ne peut accéder à la base de données. Vous devez juste réaliser ceci sur les machines qui exécuterons OCS Inventory Manager ou l'utilitaire ImportCSV.

Exécuter l'agent

L'Agent OCS Inventory est une simple application qui s'exécute sur les postes clients.

Note : L'agent est codé pour ne s'exécuter qu'au maximum une fois par jour ! C'est la raison pour laquelle vous pouvez laisser la commande d'exécution de l'agent dans le script de login sur le domaine NT par exemple, et il ne s'exécutera qu'une seule fois le matin, et pas à chaque reboot ou login de la journée.

Sur le serveur, partagez le dossier “Application”, réalisé sous le nom “Inventory$” par le Setup si vous avez sélectionné l'option. Ajouter un '$' à la fin du nom de partage permet de masquer le partage pour les utilisateurs des ordinateurs clients. Seuls les applications ou les utilisateurs connaissant le nom exact du partage peuvent y accéder en saisissant le chemin UNC à la main dans l'explorateur Windows.

Assurez-vous qu'il est accessible à tous les utilisateurs (groupe “Tout le monde” ou “Utilisateurs authentifiés” sous Windows NT4 SP4 ou +) en lecture/écriture.

Si, par exemple, vous avez installé OCS Inventory sur le serveur MYSERVER et partagé le dossier Application sous le nom INVENTORY$, tout ce que vous avez à faire est d'ajouter la commande //MYSERVER/INVENTORY$/OCSInventory.exe dans votre script de connexion par défaut et l'agent s'exécutera tout seul pour chaque utilisateur utilisant ce script !

Si vous ne souhaitez pas utiliser cette méthode, une autre solution consiste à ajouter un raccourci dans le dossier “Démarrage” du menu “Démarrer” de chaque poste à inventorier avec cette commande.

Ou bien, vous pouvez envoyer un mail à vos utilisateurs et leur demander d'exécuter cette commande.

Il y aura une grosse activité disque pendant 10 secondes quand l'Agent s'exécutera (l'inventaire peut prendre plusieurs minutes si vous décidez de scanner les disques durs à la recherche de logiciels).Une fois que l'Agent s'est terminé, ouvrez OCS Inventory Manager et consulter les rapports pour découvrir ce qu'il a détecté.

Identification de machine en base de données

OCS Inventory utilise un identifiant unique UID pour référencer les machines inventoriées en base de données. Cet UID est automatiquement généré par l'Agent lorsqu'il scanne pour la première fois une machine. Il peut être visualisé dans

Cet UID est construit à partir du nom NetBios de machine et de la date et heure de premier inventaire au format “NOM_MACHINE-AAAA-MM-JJ-HH-mm-ss”. L'UID est stocké par l'Agent dans la base de registre sous la clé ”/HKEY_LOCAL_MACHINE/Software/OCS Inventory/OCS Inventory Agent/DeviceID” ou, s'il ne peut écrire dans la base de registre, dans le fichier “C:OCSInventory.conf”. Comme ceci, si vous renommez une machine, l'UID ne change pas et est toujours utilisé pour référencer la machine dans la base de données.

Toutefois, si vous réinstallez le système d'exploitation et si vous souhaitez réutiliser l'UID, vous devez le sauvegarder depuis la base de registre ou le fichier et le restaurer avant la première exécution de l'Agent sur la machine installée avec le nouvel OS.

Options en ligne de commande

Toutes les options de configuration de l'Agent sont stockées en base de données.

Cependant, l'Agent dispose de 3 options en ligne de commande:

/UID ou -UID pour forcer la génération d'un nouvel UID.

/CSV ou -CSV pour forcer l'utilisation du support CSV au lieu de l'accès base de données.

/BIOS[=myfile.csv] ou -BIOS[=myfile.csv] qui indique à l'Agent qu'il doit importer les informations BIOS depuis un fichier généré par un outil externe comme BiosInfo.exe. Ces informations vont remplacer les informations normalement récupérée par l'Agent.

L'outil externe doit enregistrer les informations dans un fichier CSV avec le format suivant:

ComputerName;System serial number;System model;BIOS version;BIOS date;System manufacturer (optional);BIOS manufacturer (optional);Machine type (optional)

Si le nom de fichier n'est pas spécifié, l'agent tentera d'importer les données depuis un fichier nommé NomOrdinateur.csv dans le sous-dossier BIOS du dossier où se trouve l'exécutable de l'agent.

Un fichier utilisant un nom long avec des espaces doit être mis avec des guillemets.

Note : Le fichier importé est supprimé une fois l'opération terminée.

/DEBUG ou -DEBUG qui force l'agent à produire un fichier de déboggage dans le dossier où se trouve l'exécutable de l'agent. Ce fichier est nommé <NomOrdinateur.log>.

Exemples de lignes de commande :

//MYSERVER/MYSHARE/OCSinventory.exe /CSV /BIOS /DEBUG.
//MYSERVER/MYSHARE/OCSINventory.exe /BIOS="C:Program FilesBiosBIOS.CSV" /DEBUG.

Support CSV

L'Agent OCS Inventory essaie de se connecter à la base de données en utilisant le support OleDB via la DLL “OcsDB.dll”. Les propriétés d'accès à la base de données sont stockées dans le fichier “OcsDB.dll.ini” qui est créé par OCS Inventory Manager ou l'utilitaire ImportCSV.

Toutefois, l'Agent OCS Inventory Agent peut scanner des machines qui ne disposent pas d'un accès base de données à cause d'une mauvaise version d'OleDB ou de l'absence du pilote de base de données. Pour cela, il va automatiquement utiliser le support CSV. La configuration de l'Agent est stockée par OCS Inventory Manager dans le même répertoire que l'agent dans les fichiers CSV “Config.csv” et “RegConfig.csv”. Les résultats d'inventaire sont eux stockées dans des fichiers CSV dans les sous-répertoires suivants (créés par l'installation).

Access : Journaux des accès au format CSV.

BIOS : Informations BIOS au format CSV.

Controllers : Informations sur les contrôleurs système au format CSV.

Drives : Informations sur les partitions logiques au format CSV.

Hardware : Informations générales et OS au format CSV.

Inputs : Informations sur les périphériques d'E/S au format CSV.

Memories : Informations sur les slots mémoire au format CSV.

Modems : Informations sur les modems au format CSV.

Monitors : Informations sur les moniteurs au format CSV.

Networks : Informations sur les cartes réseau au format CSV.

Ports : Informations sur les ports système au format CSV.

Printers : Informations sur les imprimantes au format CSV.

Registry : Informations sur les valeurs de registre au format CSV.

Slots : Informations sur les slots système au format CSV.

Softwares : Informations sur les logiciels au format CSV.

Sounds : Informations sur les cartes son au format CSV.

Storages : Informations sur les périphériques de stockage au format CSV.

Videos : Informations sur les cartes vidéo au format CSV.

Si les résultats d'inventaire d'une machine sont stockés au format CSV et non pas directement en base de données, chacun de ces dossiers contiendra un fichier nommé NomOrdinateur.csv (hormis peut-être le dossier Results et/ou AccessLogs s'il n'y a pas d'application détectée ou si vous n'avez pas activé les access logs). Quand vous importez les résultats dans la base de données, tous ces fichiers sont supprimés, exceptés ceux qui sont dans le dossier Hardware et qui contiennent les informations de contrôle de la fréquence d'exécution de l'agent sur chaque machine.

Consulter les rapports d'inventaire et gérer la configuration

Exécutez le fichier OCSInventoryManager.exe.

A la première connexion, il va vous demander de configurer les propriétés d'accès à la base de données (voir Configuration de la base de données). Les propriétés d'accès à la base de données sont stockées dans le fichier “OcsDB.dll.ini” situé dans le même répertoire que le Manager.

Lorsque vous obtenez l'écran d'authentification, entrez votre nom d'opérateur et votre mot de passe OCS Inventory (“Admin” comme nom d'utilisateur et “Admin” comme mot de passe pour l'Administrateur par défaut)). Vous pouvez ajouter/modifier/supprimer des opérateurs en sélectionnant le nœud “Opérateurs” dans le TreeView (la fenêtre de gauche) du Manager. Tout du moins, changez le mot de passe de l'administrateur par défaut ou mieux, ajoutez un nouvel opérateur avec ne niveau d'accès “Administrator” et supprimez l'Administrateur par défaut.

Si vous avez sélectionné le type d'installation “Full Installation”, vous pouvez exécuter OCS Inventory Manager depuis un poste client en lançant la commande //MYSERVER/INVENTORY$/OCSInventoryManager.exe.

Reportez-vous à la page Utilisation pour découvrir toutes les fonctionnalités d'administration.

Exécuter l'utilitaire ImportCSV

Cet outil permet d'importer automatiquement les résultats d'inventaires au format CSV et d'exporter la configuration dans ce même format.

Il peut être lancé depuis la ligne de commande, ou bien via le scheduler système (vous pouvez programmer l'import durant la nuit par exemple).

Utilisation:

ImportCSV /HELP or -HELP pour afficher l'écran d'aide.

ImportCSV /CONFIG_DB or -CONFIG_DB pour configurer les propriétés d'accès à la base de données.

ImportCSV [CSV_IMPORT_ROOT_FOLDER] [/EXPORT_CONFIG] [/DEBUG]

CSV_IMPORT_ROOT_FOLDER est le chemin d'accès complet au répertoire où se trouve les fichiers CSV à importer ou à exporter (optionnel). S'il n'est pas indiqué, l'outil va essayer d'importer les résultats depuis le dossier où se trouve l'exécutable. Si le chemin d'accès au dossier contient des espaces, Il doit être indiqué entre guillemets ”. Les chemin d'accès UNC sont autorisés.

/EXPORT_CONFIG ou -EXPORT_CONFIG indique d'exporter aussi le configuration au format CSV (optionnel).

/DEBUG or -DEBUG permet de générer un fichier de log détaillé nommé ImportCSV.exe.log.

Tout d'abord, vous devez configurer les propriétés d'accès à la base de données en exécutant ” ImportCSV /CONFIG_DB” depuis la ligne de commande. Ceci ouvrira la fenêtre de configuration de base de données (Database configuration). Les propriétés d'accès à la base de données sont stockées dans le fichier “OcsDB.dll.ini” situé dans même répertoire que l'utilitaire.

Ensuite, vous pouvez lancer l'utilitaire depuis une ligne de commande, ou bien comme une tâche planifiée pour importer en base de données les résultats d'inventaire au format CSV.

Cet utilitaire génère les logs minimaux sur la sortie standard. Vous pouvez les capturer en redirigeant la sortie standard.

Exemple: ImportCSV “C:Program FilesOCS InventoryApplication” /EXPORT_CONFIG » ImportCSV.log Cette commande va exporter les fichiers de configuration Config.csv et RegConfig.csv dans le dossier spécifié, et importer en base de données les résultats d'inventaire au format CSV depuis les sous-dossiers. Tous les logs seront ajoutés au fichier nommé ImportCSV.log.

Vous pouvez obtenir des logs plus détaillé en appelant l'utilitaire avec l'option ”/DEBUG” ou ”-DEBUG”. Cette option provoque l'écriture dans un fichier “ImportCSV.exe.log” situé dans le même répertoire que l'exécutable de l'utilitaire de logs très, très détaillés (10 Ko par machine importée).

Pour exécuter cet utilitaire via une tâche planifiée, ajoutez une tâche avec la ligne de commande que vous souhaitez, choisissez l'heure d'exécution et assurez-vous que l'utilisateur qui lancera la tâche possède des autorisations correctes sur les fichiers et la base de données (voir HELP-FAQ).

Exécution automatique du lien

Date Nom Type Taille
11.08.2005 :fr:refresh.bat.txt Batch fiel 7.4 ko

Copiez le fichier « refresh.bat » dans le répertoire mysqlbin de Easyphp. Et créez un raccourci de ce fichier dans dossier « démarrage » du menu démarrer.

Les commandes contenues dans le fichier « refresh.bat » s'exécuteront ainsi à chaque ouverture de session. Ces commandes permettent le rafraichissement de la base de GLPI avec les informations récupérées par OCSI.