Installer OCS Inventory NG peut paraître compliqué quand on n’y connait rien à Linux mais avec un peu d’entrainement cela se passe sans trop de problème. En fait, il faut juste bien respecter les pré-requis.
Attention : Pour OCS Inventory NG 2.5, il y a un nouvel article car PHP 5.5 est maintenant requis alors que CentOS est encore livré seulement avec PHP 5.4.
Idem pour OCS Inventory NG 2.7 car il y a des changements dans les prérequis : Installer OCS Inventory NG 2.7 sous CentOS 8.
Table of Contents
Désactivation de SELinux et du pare-feu
Sauf si vous connaissez parfaitement comment configurer le contrôle d’accès SELinux et le pare-feu, il est préférable de désactiver ces deux modules.
Désactivation de SELinux
- Éditez le fichier /etc/sysconfig/selinux
- Et remplacez la ligne SELINUX=enforcing par SELINUX=permissive
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=permissive
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
Désactivation du pare-feu
- Arrêt du pare-feu : systemctl stop firewalld
- Désactivation du lancement automatique du pare-feu : systemctl disable firewalld
[root@centos-7-1804 ~]# systemctl stop firewalld [root@centos-7-1804 ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@centos-7-1804 ~]#
Installation des prérequis pour télécharger les paquets
Installer wget pour pouvoir télécharger le paquet d’installation d’OCS Inventory NG
yum install wget
Installation de la base de données
Installer un serveur de base de données (MySQL ou MariaDB)
yum install mariadb-server
Configurer le lancement automatique du serveur de base de données
systemctl enable mariadb
Lancer le serveur de base de données
service mariadb start
Installation du serveur web
Installer le serveur web Apache
yum install httpd
Installer les modules Perl, PHP et SSL pour Apache
OCS a besoin des modules Perl, PHP et SSL pour Apache.
yum install epel-release yum install mod_perl mod_php mod_ssl
Configurer le lancement automatique du serveur web Apache
systemctl enable httpd
Lancer le serveur web Apache
service httpd start
Installation des modules Perl
OCS a besoin des modules XML-Simple, Compress-Zlib, DBI, DBD-MySQL, Net-IP, SOAP-Lite, Archive-Zip et Apache-DBI.
yum install perl-XML-Simple perl-Compress-Zlib perl-DBI perl-DBD-MySQL perl-Net-IP perl-SOAP-Lite perl-Archive-Zip wget http://rpms.remirepo.net/enterprise/7/remi/x86_64/perl-Apache-DBI-1.12-1.el7.remi.noarch.rpm yum install ./perl-Apache-DBI-1.12-1.el7.remi.noarch.rpm
Installation de PHP et des modules requis
OCS a besoin de PHP et de ses modules GD, MBString, SOAP, MySQL, LDAP et XML.
yum install php-common php-gd php-mbstring php-soap php-mysql php-ldap php-xml
Téléchargement d’OCS Inventory NG
Récupérer le paquet d’installation
wget https://github.com/OCSInventory-NG/OCSInventory-ocsreports/releases/download/2.4.1/OCSNG_UNIX_SERVER_2.4.1.tar.gz
Décompresser le paquet
tar -zvxf ./OCSNG_UNIX_SERVER_2.4.1.tar.gz
Installation d’OCS Inventory NG
Installer OCS Inventory NG
cd OCSNG_UNIX_SERVER_2.4.1 ./setup.sh
Première question : où se trouve le serveur de base de données ?
+----------------------------------------------------------+ | Checking for database server properties... | +----------------------------------------------------------+ Your MySQL client seems to be part of MySQL version 5.5. Your computer seems to be running MySQL 4.1 or higher, good ;-) Which host is running database server [localhost] ?
Vu qu’il est en local, taper « entrée » pour accepter la valeur par défaut « localhost ».
Deuxième question : sur quel port écoute le serveur de base de données ?
On which port is running database server [3306] ?
Excepté si vous avez changé la configuration du moteur MySQL ou MariaDB, taper « entrée » pour accepter la valeur par défaut « 3306 ».
Troisième question : où se trouve le serveur web ?
Where is Apache daemon binary [/usr/sbin/httpd] ?
Excepté si vous avez changé la configuration du serveur Apache, taper « entrée » pour accepter la valeur par défaut « /usr/sbin/httpd ».
Quatrième question : où se trouve le fichier de configuration du serveur web ?
Where is Apache main configuration file [/etc/httpd/conf/httpd.conf] ?
Excepté si vous avez changé la configuration du serveur Apache, taper « entrée » pour accepter la valeur par défaut « /etc/httpd/conf/httpd.conf ».
Cinquième question : avec quel compte le serveur web s’exécute-t-il ?
Which user account is running Apache web server [apache] ?
Excepté si vous avez changé la configuration du serveur Apache, taper « entrée » pour accepter la valeur par défaut « apache ».
Sixième question : à quel groupe le serveur web appartient-il ?
Which user group is running Apache web server [apache] ?
Excepté si vous avez changé la configuration du serveur Apache, taper « entrée » pour accepter la valeur par défaut « apache ».
Septième question : où les fichiers de configuration du site OCS doivent-ils être déposés ?
Setup found Apache Include configuration directory in /etc/httpd/conf.d. Setup will put OCS Inventory NG Apache configuration in this directory. Where is Apache Include configuration directory [/etc/httpd/conf.d] ?
Taper « entrée » pour accepter la valeur par défaut « /etc/httpd/conf.d ».
Huitième question : où se trouve le moteur Perl ?
Found PERL interpreter at </usr/bin/perl> ;-) Where is PERL interpreter binary [/usr/bin/perl] ?
Une fois de plus, taper « entrée » pour accepter la valeur par défaut « /usr/bin/perl ».
Neuvième question : faut-il installer le serveur OCS Inventory NG (celui qui recevra les inventaire) ?
Do you wish to setup Communication server on this computer ([y]/n)?
Encore une fois, taper « entrée » pour accepter la valeur par défaut « y ».
Dixième question : où mettre les logs ?
Where to put Communication server log directory [/var/log/ocsinventory-server] ?
A nouveau, taper « entrée » pour accepter la valeur par défaut « /var/log/ocsinventory-server ».
Onzième et douzième questions : où mettre les plugins ?
Where to put Communication server plugins configuration files [/etc/ocsinventory-server/plugins] ? puis Where to put Communication server plugins Perl modules files [/etc/ocsinventory-server/perl] ?
Taper « entrée » pour accepter la valeur par défaut « /etc/ocsinventory-server/plugins » et « /etc/ocsinventory-server/perl ».
Treizième question : l’erreur sur le module « perl-Apache2-SOAP »
+----------------------------------------------------------+ | Checking for optional Perl Modules... | +----------------------------------------------------------+ Checking for Apache2::SOAP PERL module... *** Warning: PERL module Apache2::SOAP is not installed ! This module is only required by OCS Inventory NG SOAP Web Service. Do you wish to continue ([y]/n] ?
Ignorer l’erreur en tapant « entrée ».
Quatorzième question : l’erreur sur le module « perl-XML-Entities »
+----------------------------------------------------------+ | Checking for optional Perl Modules... | +----------------------------------------------------------+ Checking for Apache2::SOAP PERL module... *** Warning: PERL module Apache2::SOAP is not installed ! This module is only required by OCS Inventory NG SOAP Web Service. Do you wish to continue ([y]/n] ?
Ignorer l’erreur en tapant « entrée ».
Quinzième question : faut-il installer Rest-API ?
Do you wish to setup Rest API server on this computer ([y]/n) ?
Répondre « n ».
Seizième question : autoriser le renommage du fichier de configuration OCS pour Apache
To ensure Apache loads mod_perl before OCS Inventory NG Communication Server, Setup can name Communication Server Apache configuration file 'z-ocsinventory-server.conf' instead of 'ocsinventory-server.conf'. Do you allow Setup renaming Communication Server Apache configuration file to 'z-ocsinventory-server.conf' ([y]/n) ?
Taper « entrée » pour accepter la valeur par défaut « y ».
Dix-septième question : faut-il installer le serveur web frontal d’OCS Inventory NG ?
Do you wish to setup Administration Server (Web Administration Console) on this computer ([y]/n)?
Taper « entrée » pour accepter la valeur par défaut « y ».
Dix-huitième question : lire l’avertissement concernant la mise à jour d’OCS depuis la version 1.01 (non concerné)
+----------------------------------------------------------+ | Checking for Administration Server directories... | +----------------------------------------------------------+ CAUTION: Setup now install files in accordance with Filesystem Hierarchy Standard. So, no file is installed under Apache root document directory (Refer to Apache configuration files to locate it). If you're upgrading from OCS Inventory NG Server 1.01 and previous, YOU MUST REMOVE (or move) directories 'ocsreports' and 'download' from Apache root document directory. If you choose to move directory, YOU MUST MOVE 'download' directory to Administration Server writable/cache directory (by default /var/lib/ocsinventory-reports), especially if you use deployment feature. Do you wish to continue ([y]/n)?
Taper « entrée » pour accepter la valeur par défaut « y ».
Dix-neuvième question : où mettre les fichiers PHP ?
Where to copy Administration Server static files for PHP Web Console [/usr/share/ocsinventory-reports] ?
Taper « entrée » pour accepter la valeur par défaut « /usr/share/ocsinventory-reports ».
Vingtième question : où mettre les fichiers de cache de PHP ?
Where to create writable/cache directories for deployment packages, administration console logs, IPDiscover and SNMP [/var/lib/ocsinventory-reports] ?
Taper « entrée » pour accepter la valeur par défaut « /var/lib/ocsinventory-reports ».
Redémarrage du serveur web Apache
service httpd restart
C’est ainsi que ce termine la phase d’installation. Le prochain article à suivre concernera la configuration de la base de données et la configuration du serveur web d’OCS.
Je ne peux pas éditer de données administratives avec ce tutoriel – les cases à cocher et les boutons radio ne fonctionnent malheureusement pas.
Je dois faire ce qui suit pour que cela fonctionne
yum install php-gd
Oui, et c’était bien marqué de l’installer dans ce tuto :
yum install php-common php-gd php-mbstring php-soap php-mysql php-ldap php-xml
Hello, merci pour ton guide.
Tu peux remplacer le lien mort suivant :
wget http://buildlogs.centos.org/c7-epel.a64/perl-Apache-DBI/20160504160621/1.12-1.el7.aarch64/perl-Apache-DBI-1.12-1.el7.noarch.rpm
Par celui-ci :
http://rpms.remirepo.net/enterprise/7/remi/x86_64//perl-Apache-DBI-1.12-1.el7.remi.noarch.rpm
Merci bcp. Je corrige le lien.
Help me please:
Actuellement j’installe OCS Inventory NG Server sur ma machine utilisant Centos 7
Lors de l’installation [root@dhcppc21 OCSNG_UNIX_SERVER_2.4.1]# ./setup.sh
j’ai comme message d’erreur:
Aucun paquet perl-Apache-DBI disponible.
Erreur : Rien à faire
Installation aborted !
Installation script encounter problems to install packages !
Il semble manquer le module. Installez le avec
wget http://rpms.remirepo.net/enterprise/7/remi/x86_64/perl-Apache-DBI-1.12-1.el7.remi.noarch.rpm
puis
yum install ./perl-Apache-DBI-1.12-1.el7.remi.noarch.rpm
bonjour,
Une fois toute les commandes tapés, je me suis connecté sur ocs avec mon adresseip local, la page s’ouvre mais il m’affiche un problème d’erreur :
-ERROR: can’t write in directory (on dbconfig.inc.php), please set the required rights in order to install ocsinventory (you should remove the write mode after the installation is successful))
j’ai un problème avec les droits lors de l’installation, quelqu’un pourrait m’aider?
Bonjour,
Est-ce que tu es sûr que SELINUX est bien désactivé ?