GLPI : logiciel web libre (GPL) de gestion d'un parc informatique : inventaire des machines-périphériques-réseau et de leur lieu géographique, stockage des devis / contrats / factures, gestion des stocks de consommables, tickets d'assistance, etc.
Notons que GSIT est un fork de GLPI suite à une gestion du projet verrouillée par l'éditeur de GLPI (refus des développements communautaires dans la version 9.5 sauf partenariat payant) . Source.
J'utilise GLPI pour inventorier mon matériel informatique personnel / domestique. Pratique pour avoir sous la main la date d'achat d'un ordi, son prix, la liste de ses composants, à qui j'ai prêté du matos (je fais ça avec un statut, pour la lisibilité et la recherche, et un commentaire pour consigner le bénéficiaire), les problèmes rencontrés (je stocke ça sous forme de tickets), la date de fin de la garantie, la facture, etc.
Je veux ajouter mon """nouvel"""" ordi à mon inventaire.
Historiquement, j'utilisais OCS Inventory pour ajouter un ordinateur à l'inventaire, mais il n'est plus installé. Dans mes souvenirs, FusionInventory est censé être mieux. Utilisons-le.
On pourrait penser qu'il est plus rapide d'ajouter à la mano les deux-trois composants importants d'un ordi dans GLPI. Non. Il y a des infos intéressantes dont on ne dispose pas toujours instantanément le nombre de barrettes de RAM, la marque du support de stockage ou la quantité de VRAM, et que l'on regrettera de ne pas avoir consigné plus tard. Leur collecte via l'installation et l'utilisation d'outils supplémentaires me semble être plus pénible qu'un inventaire automatique.
J'ai la version 9.4.5 de GLPI, donc j'installe la version 9.4+2.6 du plugin FusionInventorry pour GLPI en suivant la documentation officielle.
Jugeant que ça serait plus simple, j'ai voulu installer l'agent FusionInventory pour GNU/Linux sur une version live USB de Debian. Erreur : il ne fait pas remonter ma carte graphique dans GLPI, il considère la clé USB live comme un disque dur et la fait remonter dans l'inventaire, et autres petits désagréments.
Surtout, GNU/Linux ne reconnaît pas le GPU et utilise le chipset graphique intégré au CPU avec une définition 800x600 intouchable. La boîte de dialogue de MATE qui permet d'ajouter un agencement (layout) clavier afin de passer de qwerty à azerty ne permet pas de valider le choix, car le bouton n'apparaît pas à l'écran, qu'il est impossible de la redimensionner, que je ne pouvais pas voir quelle touche il fallait presser en sus de « alt » pour déclencher le bouton, et que je n'ai pas penser à setxkbmap
(seulement à loadkeys
qui ne fonctionne pas dans un pts).
Sur le fond : l'agent FusionInventory pour GNU/Linux est au point. Installation, configuration dans /etc puis lui envoyer un SIGUSR1 pour qu'il réalise immédiatement un inventaire : tout fonctionne. \o/
Le gros blem, c'est que FusionInventory a importé dans GLPI les 2200 logiciels (environ) du Debian Live dont je n'ai que faire.
On peut configurer le plugin FusionInventory pour GLPI afin qu'il n'importe pas les logiciels. Cela se passe dans le menu « Administration » de GLPI, item « FusionInventory », sous-menu « Général », item « Configuration générale », « Inventaire ordinateur » dans le menu de gauche, assigner la valeur « Non » à l'item « Logiciels » dans la section « Options d'import ».
L'ennui, c'est que je n'ai pas accès à l'administration de FusionInventory : page blanche avec « Le cron de GLPI ne fonctionne pas, voir documentation ». Le journal des erreurs d'Apache httpd (error.log) nous donne la véritable erreur : « PHP Fatal error: Uncaught Error: Call to undefined method Plugin::getPhpDir() ». On trouve assez vite, par analogie, que la version du plugin FusionInventory que j'ai installé ne fonctionne pas avec ma version de GLPI.
Je désinstalle le plugin FusionInventory pour GLPI et j'installe sa version 9.4+2.2 (au lieu de 9.4+2.6). L'administration du plugin fonctionne. Pourtant, dans les releases notes rien décrit une incompatibilité… J'ai choisi la version 9.4+2.2 car ses notes disent « fix search last inventory when have glpi 9.4.4 ». 9.4.4, c'est proche de 9.4.5, ma version, me suis-je dit. :-
Je décide d'utiliser l'agent FusionInventory pour winwin (cf carences et désagréments rencontrés avec l'agent GNU/Linux ci-dessus). Durant l'installation, il me demande l'URL du serveur GLPI, je la lui donne. Je coche la case à cocher pour effectuer un inventaire à la fin de l'installation. Pourtant, je vois rien apparaître dans GLPI.
Je vais dans C:\Programmes\Fusioninventory\etc. Il n'y a pas de fichier agent.cfg, juste agent.cfg.sample. Le contenu est le même que celui du fichier de configuration qu'il faut modifier sous GNU/Linux. Où est donc stockée l'URL du serveur GLPI ? L'installeur de FusionInventory a foiré, on dirait. Je copie le fichier sur le bureau, je le renomme agent.cfg, je modifie la ligne « server » avec notepad, je copie le fichier à son emplacement d'origine (un message de winwin demande si je veux octroyer des droits supplémentaires afin que la copie ait lieu, c'est plus rapide que de lancer notepad en tant qu'administrateur).
Je double-clique sur fusioninventory-iventory.bat. Il prend un peu de temps, écrit un long pavé puis cmd se ferme avant que j'ai eu le temps de lire. J'ouvre une invite de commande, je glisse le script dedans, je le lance. Le pavé est juste le XML résultant de l'inventaire. A priori, l'agent ne l'envoie pas au serveur GLPI.
Je double-clique sur fusioninventory-agent.bat. Il se ferme direct, et j'ai rien dans GLPI. Je le glisse dans cmd. Ça me dit que j'ai pas assez de droits. J'ouvre un cmd en tant qu'admin, glisser le script ne fonctionne plus, donc je dois saisir son emplacement moi-même, je le lance et… j'ai ENFIN ma machine dans GLPI, sans les logiciels.
Hé bah !