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.11.1 available

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

0 logiciel listé après migration 2.8 -> 2.9.1 [closed]

Bonjour,

Je viens de faire la mise à jour de 2.8 vers 2.9.1 via le repository rpm pour centos 7.

J'ai mis à jour tout le système. J'ai bien vu qu'il fallait mettre en cron l'exécution du script /usr/share/ocsinventory-reports/ocsreports/crontab/cron_all_software.php.

Après exécution du script, la page d' accueil m' affiche bien le nombre de logiciels mais lorsque j'ouvre la page Inventory/All Software, je 'ai aucun résultat si ce n'est "no data available in table". Lorsque que sélectionne l'onglet logiciel d'une machine qui vient d'inventorier, je n'ai pas de résultat non plus mais j'ai ces erreurs dans les log apache :

[Fri Oct 08 11:08:18.007081 2021] [php7:warn] [pid 1823] [client 172.24.1.11:60232] PHP Warning:  implode(): Invalid arguments passed in /usr/share/ocsinventory-reports/ocsreports/require/softwares/SoftwareCategory.php on line 252, referer: http://ocs/ocsreports/index.p
hp?function=computer&head=1&systemid=8733
[Fri Oct 08 11:08:18.007130 2021] [php7:warn] [pid 1823] [client 172.24.1.11:60232] PHP Warning:  Invalid argument supplied for foreach() in /usr/share/ocsinventory-reports/ocsreports/require/softwares/SoftwareCategory.php on line 233, referer: http://ocs/ocsreports/ind
ex.php?function=computer&head=1&systemid=8733
[Fri Oct 08 11:08:18.301770 2021] [php7:warn] [pid 1823] [client 172.24.1.11:60232] PHP Warning:  implode(): Invalid arguments passed in /usr/share/ocsinventory-reports/ocsreports/require/softwares/SoftwareCategory.php on line 252, referer: http://ocs/ocsreports/index.p
hp?function=computer&head=1&systemid=8733&cat=software
[Fri Oct 08 11:08:18.301813 2021] [php7:warn] [pid 1823] [client 172.24.1.11:60232] PHP Warning:  Invalid argument supplied for foreach() in /usr/share/ocsinventory-reports/ocsreports/require/softwares/SoftwareCategory.php on line 233, referer: http://ocs/ocsreports/ind
ex.php?function=computer&head=1&systemid=8733&cat=software


 

Avez-vous une solution ou une piste de recherche ?

closed with the note: Problème résolu
in OCS Inventory NG server for Unix by (350 points)
closed by

2 Answers

0 votes

Bon, je pense avoir trouvé. Il s'agit d'un serveur installé par rpm (centos 7). J'ai activé la journalisation de toutes les requètes qui passent sur ma base de données. j'ai trouvé une requète lors de l'accès à "all software" qui ne peut pas fonctionner car elle fait appelle à une colonne qui n'existe pas après la mise à jour du schéma. La mise à jour a lieu dans ce script : /usr/share/ocsinventory-reports/ocsreports/files/update/7045.sql, elle drop la colonne category de la table software_name

or dans le script /usr/share/ocsinventory-reports/ocsreports/files/ocsbase_new.sql, la colonne est bien créée pour cette table.

Pour régler le problème, il  suffit de passer l'instruction suivante:

ALTER TABLE software_name ADD COLUMN category int DEFAULT NULL;

Cependant les erreurs php on toujours lieu dans le fichier /var/log/httpd/error_log

by (350 points)
edited by
0 votes

J'ai finalement réussi à résoudre le problème. L'installation et la mise à jour ont été faites via les rpms. Pour la mise à jour, j'ai donc effectué un simple yum update. Or, il se trouve que cette opération n'a pas remplacé tous les fichiers qu'elle aurait du. Pour résoudre définitivement le problème, j'ai simplement du faire un yum reinstall ocsinventory-reports-2.9.1-1.el7.ocs.noarch. Tout est alors rentré dans l'ordre.

J'ai finalement supprimé la colonne category de la table software_name. Et tout fonctionne bien maintenant.

by (350 points)
 
Powered by Question2Answer
...