Trace: » Installation de GLPI et OCS sous Mac OS X 10.5 Client

Installation de GLPI et OCS sous Mac OS X 10.5 Client

Documentation rédigée par Christina V.

Historique

Version Date Auteur ObjetCommentaires
1.003/03/2009Christina V.Création du document
1.104/03/2009Christina V.Installation du client OCS Mac OS X
1.205/03/2009Christina V.Sauvegardes automatiques des bases MySQL: glpi, ocsweb
1.306/03/2009Christina V.VirtualHost (glpi,ocs) / Intégrer OCS dans GLPI
1.416/03/2009Christina V.Import logiciels avec GLPI
1.528/03/2009Christina V.IMAP dans PHP5 à l'aide de MacPorts → Créer des tickets automatiquement par mail

Xcode Tools

Xcode Tools va vous permettre de compiler les différentes sources. Son installation se fait à partir du cd ou dvd d'origine Mac OS X 10.5 “Léopard” : “XcodeTools.mpkg”.

MacPorts

• Le projet “MacPorts” est une initiative de la communauté open-source en vue de faciliter la compilation, l’installation et la mise à jour soit via ligne de commande, X11 ou Aqua de logiciels open-source pour le système d’exploitation Mac OS X.

• Récupérer la dernière version sur le site de l’éditeur - http://www.macports.org/

Installation à partir d’un package: *.dmg

• Ouvrir le fichier MacPorts-1.7.0-10.5-Leopard.dmg

• Double cliquer sur le fichier MacPorts-1.7.0.pkg puis suivre les instructions.

Finaliser l’installation en récupérant la liste des sources disponibles

• Ouvrir une fenêtre “Terminal”, puis saisir la commande:

sudo port -v selfupdate

Installation d'Apache, PHP , MySQL et IMAP avec MacPorts

• Si vous ne l'avez pas déjà fait, assurez-vous de désactiver d'Apple “Partage Web personnel” dans les Préférences Système afin que le serveur Apache par défaut ne fonctionne pas.

I. Installation d’Apache2

• Ouvrir une fenêtre Terminal, et à l’aide de MacPorts procéder à l’installation de apache2

 sudo port install apache2  

• Créer le fichier initial de configuration httpd.conf

cd /opt/local/apache2/conf
sudo cp httpd.conf.sample httpd.conf

• Activez votre installation d’Apache pour qu’il commence dès maintenant et à chaque fois que vous démarrez votre machine:

 sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist 

• Ouvrir votre navigateur sur la page http://localhost/ et vérifiez qu’Apache fonctionne, vous devriez voir s’afficher “It work”.

• Pour mettre à disposition le Manuel du Serveur Apache HTTP, éditez le fichier /opt/local/apache2/conf/httpd.conf et recherchez la ligne

#Include conf/extra/httpd-manual.conf

• Puis enlever le commentaire #

Include conf/extra/httpd-manual.conf

• A la fin du fichier httpd.conf, ajoutez la ligne

Include conf/extras-conf/*.conf

II. Installation de MySQL

• Ouvrir une fenêtre Terminal, et à l’aide de MacPorts procéder à l’installation de MySQL

sudo port install mysql5 +server

• Activez votre installation de MySQL Server pour qu’il commence dès maintenant et à chaque fois que vous démarrez votre machine:

sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

• Sous votre session admin, éditer un fichier .profile:

vi /Users/admin/.profile

• Puis ajouter la ligne:

PATH=/opt/local/lib/mysql5/bin:$PATH

1. Définir la base de données principale:

• Dans une fenêtre Terminal saisir les commandes:

sudo -u mysql mysql_install_db5
sudo chown -R mysql:mysql /opt/local/var/db/mysql5/
sudo chown -R mysql:mysql /opt/local/var/run/mysql5/
sudo chown -R mysql:mysql /opt/local/var/log/mysql5/

• Si ça ne marche pas, essayez :

sudo mysql_install_db5
sudo chown -R mysql:mysql /opt/local/var/db/mysql5/
sudo chown -R mysql:mysql /opt/local/var/run/mysql5/

• Vous pouvez démarrez MySQL daemon :

sudo /opt/local/bin/mysqld_safe5 &

• Vous pouvez tester MySQL daemon avec mysql-test-run.pl:

cd mysql-test ; perl mysql-test-run.pl

• Assurez-vous que le service est bien démarré :

ps -ax | grep mysql

• Où se situe la commande MySQL exécuté par défaut (exemple):

$ which mysql
/opt/local/lib/mysql5/bin/mysql

• Pour tester l’accès au serveur MySQL, saisir la commande:

mysql -uroot

2. Définir des utilisateurs: glpi, ocs ...

• Ouvrir une fenêtre Terminal puis saisir les commandes suivantes pour créer un utilisateur “ocs” ayant tous les droits, sur toutes les bases de données:

mysql -uroot
mysql> create user ‘ocs’@’localhost’ identified by ‘mot_de_passe_ocs’;
mysql> create user ‘ocs’@’%’ identified by ‘mot_de_passe_ocs’;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'ocs'@'localhost'
-> IDENTIFIED BY 'mot_de_passe_ocs' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'ocs'@'%'
-> IDENTIFIED BY 'mot_de_passe_ocs' WITH GRANT OPTION;
mysql> exit;

• Tester la connexion MySQL avec l’utilisateur ocs

shell> mysql -uocs -pmot_de_passe_ocs

3. Définir l’emplacement du fichier mysql.sock

• Créer un dossier /var/mysql et créer un lien mysql vers /opt/local/var/run/mysql5/mysqld.sock

sudo ln -s /opt/local/var/run/mysql5/mysqld.sock /tmp/mysql.sock
sudo mkdir /var/mysql
sudo ln -s /opt/local/var/run/mysql5/mysqld.sock /var/mysql/mysql.sock

III. Installation de PHP

• Ouvrir une fenêtre Terminal, et à l’aide de MacPorts procéder à l’installation de PHP5

sudo port install php5 +apache2 +mysql5 +imap

• Intégrer PHP à Apache:

cd /opt/local/apache2/modules
sudo /opt/local/apache2/bin/apxs -a -e -n "php5" libphp5.so

• Editez le fichier /opt/local/apache2/conf/httpd.conf et recherchez la ligne

 DirectoryIndex index.html

• et remplacez par:

 DirectoryIndex index.php index.html 

• Définir à la fin du fichier httpd.conf , la configuration du module mod_php:

#
# Include PHP configurations
#
Include conf/extras-conf/mod_php.conf

• Définir la configuration de php:

cd /opt/local/etc
sudo cp php.ini-dist php.ini

• Si vous installez php5 avec “pear” :

sudo cp pear.conf.sample pear.conf

• Redémarrez le serveur Apache pour que les changements soient prises en compte:

sudo /opt/local/apache2/bin/apachectl -k restart

• Créer un fichier phpinfo.php , dans /opt/local/apache2/htdocs, contenant les lignes suivantes:

<?php
phpinfo();
?> 

• Ouvrir votre navigateur sur la page http://localhost/phpinfo.php et vérifiez la version de PHP ,ainsi que le support MYSQL.

• Afficher la liste des modules installée sous Apache2:

httpd -t -D DUMP_MODULES

Remarque: une fois tous les services Apache, MySQL, PHP installés … définir le mot de passe “root” du serveur MySQL, par défaut “vide” à l'aide de la commande:

mysqladmin5 -u root -p password <nouveau mot de passe>

Perl sous Mac OS X

Mac OS X 10.5 embarque Perl 5.8.8 dans son installation par défaut. Perl est la force cachée qui agit derrière tant d’applications Web que, pour beaucoup de personnes, Perl est synomyne de de CGI. Il s’intègre simplement à Apache, qui est lui aussi présent dans Mac OS X. Des modules ont été écrits pour répondre à tous les besoins imaginables, des applications d’interfaçage avec les bases de données, aux dessins de graphismes et à l’analyse syntaxique des divers types de fichiers spécialisés…. et notamment OCS ;)

mod_perl est un module d’extension pour Apache qui permet d’intégrer un interprèteur Perl au serveur Web,avec pour conséquence des traitements CGI beaucoup, beaucoup plus rapide.

L’installation manuelle de mod_perl peut être un processus difficile, mais cela ne doit pas être plus compliqué que de taper install Bundle::Apache2.

• Pour afficher les modules PERL installés saisir dans une fenêtre Terminal:

sudo perl -MCPAN -e autobundle

• Pour mettre à jour l’interpréteur de commandes PERL saisir dans une fenêtre Terminal:

sudo perl -MCPAN -e shell
cpan> install Bundle::CPAN

Installation de OCSInventory Serveur

OCSInventory est une application permettant de réaliser un inventaire sur la configuration matérielle des machines du réseau et sur les logiciels qui y sont installés. OCS permet de visualiser cet inventaire grâce à une interface Web.

Commencer par télécharger la dernière archive en date de OCSInventory - http://www.ocsinventory-ng.org/index.php?page=French, puis décompresser l'archive sur votre “Bureau”.

Pré-requis: modules Perl

PERL version 5.6 ou supérieure. o Module Perl XML::Simple version 2.12 ou supérieure.

o Module Perl Compress:Zlib version 1.33 ou supérieure.

o Module Perl DBI version 1.40 ou supérieure.

o Module Perl DBD::Mysql version 2.9004 ou supérieure.

o Module Perl Apache::DBI version 0.93 ou supérieure.

o Module Perl Net::IP version 1.21 ou supérieure.

o Module Perl SOAP::Lite version O.66 ou supérieure.

Installation des modules Perl

• Ouvrir une fenêtre Terminal, puis procéder à l’installation des modules Perl mentionné ci-dessus.

• Exemple de résultat attendu:

#sudo perl -MCPAN -e shell
cpan> install XML::Simple
XML::Simple is up to date (2.18).

cpan> install Compress::Zlib
Compress::Zlib is up to date (2.015).

cpan> install DBI
DBI is up to date (1.607).

cpan> install DBD:mysql
DBD::mysql is up to date (4.010).

cpan> install Apache::DBI
Apache::DBI is up to date (1.07).

cpan> install Net::IP
Net::IP is up to date (1.25).

cpan> install SOAP::Lite
SOAP::Lite is up to date (v0.710.8).

cpan> install XML::Entities

cpan> install mod_perl2
Please provide a full path to 'apxs' executable
(press Enter if you don't have it installed): /opt/local/apache2/bin/apxs

• Finaliser l’installation du module Perl2 mod_perl

cd /opt/local/apache2/modules/
sudo /opt/local/apache2/bin/apxs -a -e -n "perl" mod_perl.so
[activating module `perl' in /opt/local/apache2/conf/httpd.conf]

• Exemple de résultat attendu, éditer le fichier httpd.conf puis vérifie la présence des lignes suivantes, puis redémarrer le service Web:

LoadModule perl_module modules/mod_perl.so

• Autre moyen de vérifier que mod_perl2 est bien intégré à Apache2:

/opt/local/apache2/bin/httpd -t -D DUMP_MODULES

Déroulement de l'installation du serveur OCS Inventory:

• Une fois les modules Perl installés, nous allons pouvoir procéder à l'installation du serveur OCS Inventory. Pour cela vous rendre dans l'archive décompressée, puis exécuter la commande:

sudo sh setup.sh

• Ne reste plus qu'à dérouler l'installation:

Do you wish to continue ([y]/n)? y

Which host is running database server ? localhost

On which port is running database server ? 3306

Where is Apache daemon binary ? /opt/local/apache2/bin/httpd

Where is Apache main configuration file ? /opt/local/apache2/conf/httpd.conf

Which user account is running Apache web server ? www

Which user group is running Apache web server ? www

Where is PERL Intrepreter binary ? /usr/bin/perl

Do you wish to setup Communication server on this computer ([y]/n)? y

Where is Apache Include configuration directory ? /opt/local/apache2/conf/extras-conf

Where to put Communication server log directory ? /var/log/ocsinventory-NG

Do you wish to setup Administration server (web administration console) on this computer ([y]/n)? y

Where is Apache root document directory [] ? répondez /opt/local/apache2/htdocs

Si tout s'est correctement déroulé vous devriez voir apparaître : Enjoy OCS Inventory NG ;-)

N'oubliez pas de relancer Apache

Configuration du serveur OCS Inventory:

• Ne reste plus qu'à ouvrir votre navigateur préféré et saisir l'URL http://localhost/ocsreports pour vous connecter à la console d'Administration …

• Pour la suite des opérations, le mieux est de consulter le site Wiki d'ocs inventory - http://wiki.ocsinventory-ng.org/index.php?title=OCS_Inventory_NG:Howtos/fr ;)

Virtual Host: ocs.mondomain.com, glpi.mondomain.com

Le principe des Serveurs Virtuels consiste à faire fonctionner un ou plusieurs serveurs Web (comme www.company1.com et www.company2.com) sur une même machine. Les serveurs virtuels peuvent être soit “par-IP” où une adresse IP est attribuée pour chaque serveur Web, soit “par-nom” où plusieurs noms de domaine se côtoient sur des mêmes adresses IP. L'utilisateur final ne perçoit pas qu'en fait il s'agit d'un même serveur physique.

• Editer le fichier “httpd.conf“

sudo vi /opt/local/apache2/conf/httpd.conf

• Recherchez la ligne :

# Virtual hosts
# Include /opt/local/apache2/conf/extra/httpd-vhosts.conf

• et remplacez par :

# Virtual hosts
Include /opt/local/apache2/conf/extra/httpd-vhosts.conf

• Editer le fichier “httpd-vhosts.conf “

sudo vi /opt/local/apache2/conf/extra/httpd-vhosts.conf 

• Vérifier, puis jouter les informations comme ci-dessous:

#
# Use name-based virtual hosting.
#
NameVirtualHost *

<VirtualHost *>
    
     ServerName ocs.mondomain.com
    DocumentRoot "/opt/local/apache2/htdocs/ocsreports"

</VirtualHost>

<VirtualHost *>
    ServerName "glpi.mondomain.com"
    DocumentRoot "/opt/local/apache2/htdocs/glpi"

</VirtualHost>

• Redémarrez le serveur Apache pour que les changements soient prises en compte:

sudo /opt/local/apache2/bin/apachectl -k restart

Installation de OCSInventory Client Mac OS

• Récupérer dans un 1er temps, le package d'installation du client OCS sur le site web - http://codejanitor.com/wp/apps/ocs-mac-agent/

• Sur ce site “Codejanitor”, vous avez la possibilité de récupérer un package permettant de personnaliser votre installation “OCS Client”, à savoir renseigner l'emplacement de votre serveur OCS.

Identifier l'emplacement de votre serveur OCS

• Une fois le package OCS Client installé sur la station, ouvrir sur le poste une fenêtre Terminal, et éditer le fichier /etc/ocsinventory-client/ocsinv.conf

sudo vi /etc/ocsinventory-client/ocsinv.conf 

<?xml version="1.0" encoding="UTF-8"?>
<CONF>
        <DEVICEID>Macintosh-2009-01-19-13-32-38</DEVICEID>
        <OCSFSERVER>ocs.mondomaine.com</OCSFSERVER>
        <UPDATE>1</UPDATE>
        <GETNAME>hostname</GETNAME>
</CONF>

• Remplacer ocs.mondomaine.com par l'adresse ip ou le nom FQDN (fully qualified domain name) de votre serveur OCS.

Effectuez une première remontée OCS ...

• Ouvrir une fenêtre Terminal, et saisir la commande ci-dessous:

sudo php /usr/local/sbin/ocs_mac_agent.php

• Ne reste plus qu'à ouvrir votre navigateur préféré sur l'URL http://localhost/ocsreports pour vous connecter à la console d'Administration et vous assurer que la station a bien été pris en compte par le serveur OCS ;-)

• Ensuite les remontées se font automatiquement; au redémarrage du poste très souvent.

Installation et configuration de GLPI:

• Commencer par télécharger la dernière archive en date de GLPI. Pour se faire cliquer sur ce lien . Décompresser l'archive dans le répertoire «/opt/local/apache2/htdocs/».

• Ouvrir une fenêtre Terminal et modifier les permissions sur des dossiers ./files et ./config

sudo chmod -R 777 /opt/local/apache2/htdocs/glpi/files
sudo chmod -R 777 /opt/local/apache2/htdocs/glpi/config

Configuration du serveur GLPI

• Ouvrir votre navigateur internet, puis saisir l’URL suivante http://localhost/glpi pour vous connecter à l’interface d’administration.

• A la fenêtre “Language” choisir “Français (fr_FR)”, puis cliquer sur OK

• A la fenêtre “Licence” accepter la license, puis cliquer sur Continuer

• A la fenêtre “Début de l’installation” choisir Installation

• A la fenêtre “Etape 0” vérification de la compatibilité avec le système,cliquer sur Continuer

• A la fenêtre “Etape 1” configuration de la connexion à la base de données:

Mysql server: localhost

Mysql user: root

Mysql pass: Ne_rien_indiquer

• A l’écran “Etape 2” sélectionner soit une base glpi existante soit en créer un nouvelle.

• Dans un 1er temps, nous allons créer une nouvelle base “glpi”.

• A l’écran “Etape 3” la base est crée cliquer sur Continuer

• A l’écran “Etape 4” l’installation est terminée, les logins et mot de passes par défaut sont:

glpi/glpi (administrateur)

tech/tech (technicien)

normal (normal)

post-only/post-only (postonly)

• Une dernière étape sera de valider une mise à jour.

• A l’écran “Update” la connexion à la base a réussie cliquer sur Utiliser GLPI

Importation d’une base de données glpi existante

• Ouvrir une fenêtre “Terminal” sur le serveur glpi existant et saisir la commande suivante pour extraire la base glpi:

shell> mysqldump --quick dbname | gzip > dbname.gz

• Exemple:

mysqldump --user=root --password=mot_de_passe --quick glpi| gunzip > glpi.gz 
chmod -R 777 glpi.gz

• Vérifier que la base de données glpi n’existe pas sur votre serveur Mysql:

mysql -uroot
mysql> show databases;

• Si la base de données “glpi” existe, alors la supprimer et en récréer une nouvelle:

mysql> drop database glpi;
mysql> create database glpi;

• Copier le fichier “glpi.gz” sur le nouveau serveur, puis saisir la commande ci-dessous pour l’importer:

gunzip < dbname.gz | mysql dbname

• Exemple:

gunzip < glpi.gz |mysql -uroot glpi

Voilà, il ne vous reste plus qu'à saisir dans votre navigateur préféré cette adresse web http://localhost/glpi ou http://glpi.mondomaine.com/glpi pour accéder à la dernière phase de l'installation de GLPI.

Sauvegardes automatiques des bases de données MySQL: glpi , ocs

Dans un 1er temps, nous allons définir le script utilisé puis la fréquence des sauvegardes:

Exemple de script de sauvegarde "backup_bdd.sh "des bases de données MySQL: glpi, ocsweb


#!/bin/bash 
# 
## On se place dans le repertoire ou l'on veut sauvegarder les bases. Exemple: BACKUPS/
# 
cd /BACKUPS/

MESSAGE="SAUVEGARDE DES BASES GLPI & OCSWEB:"

for i in glpi ocsweb; do 

## Sauvegarde des bases de donnees en fichiers .sql

/opt/local/lib/mysql5/bin/mysqldump -uroot -pmot_de_passe_root --databases $i > ${i}_`date +%D | sed 's;/;-;g'`.sql

chmod -R 777 /BACKUPS/

done

cd

#
## Supprime les sauvegardes vieilles de plus de 5 jours
#

find /BACKUPS/ -type f -mtime +4 | xargs rm

Fréquence des sauvegardes

Sur votre serveur MySQL, ouvrir une fenêtre Terminal, puis éditer la crontab.

Exemple d'une sauvegarde quotidienne (L,M,Mer,J,V) réalisée à 12h:

 
# crontab -e
00 12 * * 1-5 ~/backup_bdd.sh

Intégrer les remontés OCS dans GLPI:

• A l'aide de votre navigateur préféré, vous rendre sur votre site web glpi.mondomain.com

• Aller dans le Menu Configuration > Mode OCSNG

• Cliquer sur ”+” (Ajouter), puis renseigner l'emplacement de votre serveur ocs.mondomain.com, puis cliquer sur Valider. Exemple:

Nom: ocs.mondomain.com

Hote OCSWeb: ocs.mondomain.com

Nom de la base de données OCS: ocsweb

Utilisateur de la base de données OCSWeb : ocs

Mot de passe de l'utilisateur: OCSWeb: mot_de_passe_ocs

• Ce qui est formidable, c'est que vous pouvez déclarer autant d'hôtes OCS que vous voulez :-D

• Voir également http://glpi-project.org/wiki/doku.php?id=fr:config:ocsng

Import logiciel avec GLPI :

• Au niveau des réglages de connexion au serveur OCS, définir “Utiliser le dictionnaire logiciel d'OCS ” sur “NON” dans “Configuration > Mode OCSNG ” et tout rentre dans l'ordre.

Annexes

Liens externes:

Les autres extensions de MacPorts:

MacPorts permet plusieurs extensions par défaut, y compris les boucles, freetype, jpeg, libpng, libmcrypt, libxml2, libxslt, mhash, et tiff. En plus de ces extensions, vous ajoutez les variantes suivantes:

+Apache ou apache2 (Apache 1,3) - Nous sommes d'installer le module apache2

+Fastcgi - Probablement pas nécessaires pour le développement de serveurs

+ Imap - les fonctions de messagerie IMAP

+ Tidy - HTML utilitaires de nettoyage

+ Mssql - MS SQL Server

+ + Snmp ou macports_snmp - Réseau de surveillance et de gestion

+ Mysql3 - Vous n'êtes pas encore?

+ Mysql4 - mieux:)

+ MySQL5

+ Postgresql - Excellente base de données transactionnelle.

+ Sqlite - Excellent et léger moteur de base de données

+ Ipc - Construire un site avec des exigences de haute performance?

+ PCNTL - Unix fonctions de contrôle de processus

+ Pear - PHP Extension Manager, à avoir.