Welcome to OCS Inventory NG community support, where you can ask questions and receive answers from other members of the community.

Please ask questions only in English or French.

Release 2.12.3 available

The official documentation can be found on https://wiki.ocsinventory-ng.org. Read it before asking your question.

Perl Apache Module Plugin

Bonjour,

Lorsque je place un fichier.conf dans /etc/ocsinventory-server/plugins

ex: /etc/ocsinventory-server/plugins/Networkshare.conf

et que je redémarre le service Apache2 : service apache2 restart , celui-ci ne veut pas démarrer. Je vais dans le fichier log :

root@CNDGINVENTORY:~# cat /var/log/apache2/error.log | grep error
[Thu Nov 16 10:40:37.381698 2017] [perl:error] [pid 20145] $s->add_config() has failed: Can't locate Apache/Ocsinventory/Plugins/Networkshare/Map.pm in @INC (you may need to install the Apache::Ocsinventory::Plugins::Networkshare::Map module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.22.1 /usr/local/share/perl/5.22.1 /usr/lib/x86_64-linux-gnu/perl5/5.22 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.22 /usr/share/perl/5.22 /usr/local/lib/site_perl . /etc/apache2 /etc/ocsinventory-server/perl) at (eval 100) line 2.\nCompilation failed in require at (eval 99) line 2.\n
[Thu Nov 16 10:40:37.381720 2017] [perl:error] [pid 20145] Can't load Perl module Apache::Ocsinventory::Plugins for server CNDGINVENTORY.cndg.intra:0, exiting...

Si j'enlève le fichier "Networkshare.conf", le serveur restart correctement.

Info serveur:

Serveur : Ubuntu 16.04 version 10.0.31-MariaDB-0ubuntu0.16.04.2

Serveur Web : Apache 2.4.18

PHP : 7.0.22

Ocsreports 2.3.1

Merci de m'aider, je suis complètement perdu.

Bien à vous,

Charles
in OCS Inventory NG server for Unix by (120 points)

4 Answers

0 votes

Bonjour Charles,

effectivement, le fichier .conf seul du plugin n'est pas suffisant pour Apache... Il faut aussi copier le fichier correspondant (dans votre exemple) :

/etc/ocsinventory-server/perl/Apache/Ocsinventory/Plugins/Networkshare/Map.pm

...ainsi que d'autres fichiers et paramétrages pour la remontée d'infos du plugin dans l'interface (+ ajout de champs dans la BdD)

Pour installer votre plugin, le plus simple est de passer par l'interface d'OCSreports :

 - Copier le fichier ZIP du plugin dans le dossier /usr/share/ocsinventory-reports/ocsreports/download/ du serveur OCS

 - OCSReports > Plugins > Plugins manager > Choisir votre plugin dans le menu déroulant et cliquer sur le bouton "Install"

Cordialement, Stéphane

by (32.6k points)
edited by
0 votes
Reprise du dernier message de Charles :

"Bonjour Stéphane,

J'ai déjà effectué toutes ces manipulations, dès que je place le fichier "NOM_PLUGIN.conf" dans le répertoire :

/etc/ocsinventory-server/plugins et que je redémarre "Apache2". J'ai un message d'erreur : Stopping Apache httpd web server apache2, dès que j'enlève le fichier.conf, et que je relance le service c'est ok.

J'ai réussi à un moment avec différentes manipulations, dès que je place le fichier "NOM_PLUGIN.conf", il crée automatiquement le dossier "NOM_PLUGIN" dans le chemin : /etc/ocsinventory-server/perl/Apache/Ocsinventory/Plugins/

Mais j'ai du faire un restore, car j'avais installé pas mal de choses inutiles je pense, et du coup, je ne sais plus refaire la manipulation.

Merci de m'éclairer."

Bien à toi,

Charles
by (32.6k points)
0 votes
Charles, on va reprendre...

As-tu essayé d'installer le plugin via l'interface OCSReports et quels sont les symptômes ?
by (32.6k points)
0 votes

Bonjour,

Je déterre le sujet car j'ai rencontré le même soucis mais avec le plugin winusers (Ocsreports 2.3 sur ubuntu16.04) :

  •   après l'installation via le gestionnaire de plugin sur l'interface web OCS,le plugin ne fonctionne pas,il n'y a pas de fichier .conf dans /etc/ocsinventory-server/plugins et pas de Map.pm dans le dossier perl du plugin. Je les mets en place avec les bons droits. Restart d'apache2 mais le serveur ne s'affiche plus. apache ne démarre plus du tout.

  •  Je vérifie le fichier winusers.conf ==> il y a un ";"  en bout de ligne que je supprime pour obtenir PerlModule Apache::Ocsinventory::Plugins::winusers::Map    et non [...]::winusers::Map;

  • Je vérifie également le Map.pm je vois des Majuscules et parfois non sur des chemins, je rectifie pour que "winusers" soit écrit de la même façon partout

  • Je vérifie mes log error apache2 :

[Tue May 29 14:53:44.014858 2018] [perl:error] [pid 10854] $s->add_config() has failed: Can't locate Apache/Ocsinventory/Plugins/Winusers/Map.pm in @INC (you may need to install the Apache::Ocsinventory::Plugins::Winusers::Map module) ($

[Tue May 29 14:53:44.014966 2018] [perl:error] [pid 10854] Can't load Perl module Apache::Ocsinventory::Plugins for server serv-ocsglpi:0, exiting...
  •   - Et donc je vérifie mes dossiers et leur casse, et met une majuscule au dossier qui contient le Map.pm.
  • Puis un sudo service apache2 restart

Et le service apache redémarre normalement!

Le serveur est maintenant accessible via l'interface et le plugin fonctionne correctement!

by (290 points)
 
Powered by Question2Answer
...