Cette page présente ce qu'il faut faire pour déployer l'agent d'inventaire !FusionInventory.
<<TableOfContents()>>

== Debian et Ubuntu ==

L'installation sous Ubuntu ou Debian se fait de la façon suivante :

 * ajouter la source APT AUF si ce n'est pas encore fait
 . (cf http://wiki.auf.org/wikiteki/DépôtAPT)

 * sur un poste client (physique ou virtuel) :
  * installer le paquet `auf-inventaire-client`
  * lancer la commande `auf-inventaire-config code-inventaire`

 * sur un serveur (physique ou virtuel) :
  * installer le paquet `auf-inventaire-serveur`
  * lancer la commande `auf-inventaire-config code-inventaire`

La partie `code-inventaire` étant le code d'inventaire de la machine physique correspondant, en remplaçant les espaces par des tirets (-).

Si la machine ne possède pas encore de code d'inventaire, vous pouvez en créer un vous-même selon le modèle `PPi Innnn`, tel que :
 * `PP` est le code de pays suivant le norme ISO-3166 ;
 * `i` est le numéro d'implantation dans le pays ;
 * `I` indique que c'est un inventaire informatique ;
 * `nnnn` est un numéro d'inventaire informatique dans cette implantation ; ce numéro est unique et non ré-utilisable.

Le code d'inventaire devra être collé sur la machine correspondante.

=== Exemple sur un poste client ===

Sur un poste client, dont le code d'inventaire est `CA1 I1353`, possédant 2 machines virtuelles Precise et Wheezy (serveur de tests virtualisé) dans VirtualBox, on fera :
 * installer le paquet `auf-inventaire-client` sur le système hôte du poste client ;
 * lancer la commande `auf-inventaire-config CA1-I1353` dans le système hôte ;
 * installer le paquet `auf-inventaire-client` sur le système virtuel Precise ;
 * lancer la commande `auf-inventaire-config CA1-I1353` dans le système virtuel ;
 * installer le paquet `auf-inventaire-serveur` sur le système virtuel Wheezy ;
 * lancer la commande `auf-inventaire-config CA1-I1353` dans le système virtuel.

=== Exemple sur un serveur ===

Sur un serveur, dont le numéro d'inventaire est `CA1 I1303`, possédant 3 conteneurs OpenVZ `www`, `mail` et `lucid-dev` (client de développement virtualisé), on fera :
 * installer le paquet `auf-inventaire-serveur` sur le système hôte du serveur ;
 * lancer la commande `auf-inventaire-config CA1-I1303` dans le système hôte ;
 * installer le paquet `auf-inventaire-serveur` sur le système virtuel `www` ;
 * lancer la commande `auf-inventaire-config CA1-I1303` dans le système virtuel ;
 * installer le paquet `auf-inventaire-serveur` sur le système virtuel `mail` ;
 * lancer la commande `auf-inventaire-config CA1-I1303` dans le système virtuel ;
 * installer le paquet `auf-inventaire-client` sur le système virtuel `lucid-dev` ;
 * lancer la commande `auf-inventaire-config CA1-I1303` dans le système virtuel.

== Autres systèmes ==

L'installation sous Windows, Mac OS X, BSD, Android ou autres systèmes doit se faire en suivant les instructions sur le site de !FusionInventory :

 http://www.fusioninventory.org/documentation/agent/installation/

/!\ '''Ne pas suivre les documentations à cette adresse pour une installation sous Debian ou Ubuntu !''' /!\

Les options à mettre en place sont les suivantes :
 * `server = https://glpi.auf.org/glpi/plugins/fusioninventory/`
 * `no-task = deploy` ''(ne pas activer la tâche de déploiement)''
 * `no-ssl-check = 1` ''(pas de vérification SSL pour le moment)''
 * `no-httpd = 1` ''(pas de service web offert par l'agent)''
 * `logger = Syslog` ''(utilisation des journaux système)''
 * `tag = PPi-Innnn` ''(code d'inventaire informatique)''
 * mode `daemon` pour s'exécuter automatiquement à une fréquence paramétrée dans GLPI (par défaut toutes les 24 heures)

=== Windows ===

==== Télécharger l'agent ====

 * Télécharger la version 2.3.5 de Fusion-Inventory (attention au version 64 ou 32 bit) sur la page suivante : `http://forge.fusioninventory.org/projects/fusioninventory-agent-windows-installer/files`

==== Installation et configuration de l'agent ====

 * Ouvrir une fenêtre DOS (en tant qu'administrateur) et se placer dans le dossier ou l'agent a été téléchargé.

 * Exécuter la commande suivante (attention, adapter la version de l’exécutable et le paramètre tag):
`fusioninventory-agent_windows-x64_2.3.5.exe /acceptlicense /add-firewall-exception /debug=0 /installtasks=Inventory /installtype=from-scratch /no-httpd /no-ssl-check /no-start-menu /runnow /server="https://glpi.auf.org/glpi/plugins/fusioninventory/" /tag=CAx-Ixxxx /S`

 * Les paramétrés sont auto explicative. Au besoin, les détails sur tout les paramètres peuvent être affichés en exécutant la commande: `fusioninventory-agent_windows-x64_2.3.5.exe /?`

 * Installation de l'agent créera `FusionInventory-Agent` service.
 * Les paramétrés sont écrit dans le registre Windows et peuvent être trouvés dans `HKEY_LOCAL_MACHINE\SOFTWARE\FusionInventory-Agent`
   

==== Bon à savoir ====

 * L'agent peut aussi être installé en cliquant sur l’exécutable et en passant par interface graphique. Évidemment, il faudra y saisir/choisir les paramètres/options nécessaires.
 * Pour forcer l'envoi immédiatement de l’inventaire par l'agent, se placer (en DOS) dans le dossier `C:\Program Files\FusionInventory-Agent\perl\bin` et exécuter: `perl fusioninventory-agent`
 * Si jamais un paramètre est modifié dans le registre il faudra redémarrer le service `FusionInventory-Agent` pour que cela soit pris en compte.



=== Mac OS X ===

==== Télécharger l'agent ====

En premier, sélectionner l'archive mpkg de l'agent correspondant à votre machine Intel ou PowerPC
 * Lien pour Intel : http://prebuilt.fusioninventory.org/stable/macosx-intel/
 * Lien Pour PowerPC : http://prebuilt.fusioninventory.org/stable/macosx-ppc/
Vous devez télécharger le paquet .pkg.tar.gz.

==== Configuration ====

Pour configurer l'agent, faites un clic droit sur le fichier `FusionInventory-Agent.pkg` et sélectionnez «Afficher le contenu du paquet».
Allez dans le dossier '''Contents -> Resources''' et modifiez le fichier `agent.cfg`.

==== Installation de l'agent ====

Pour lancer l'installation, faites un double clic sur le fichier `FusionInventory-Agent.pkg` et suivez les différentes étapes. Durant l'installation, vous devrez taper votre login et mot de passe administrateur.
Une fois l'agent installé, vous pouvez le reconfigurer en modifiant le fichier `/opt/fusioninventory-agent/agent.cfg`. Vous devrez redémarrer le service après.
 * Pour arrêter le service: `sudo launchctl stop org.fusioninventory.agent`
Dans quelques rares cas, ce ne sera pas suffisant pour arrêter l'agent. Vous devez tuer le processus avec cette commande: `sudo killall perl`
 * Pour démarrer le service: `sudo launchctl start org.fusioninventory.agent`

Source : http://www.fusioninventory.org/documentation/agent/installation/macosx/

=== BSD ===

Voir http://www.fusioninventory.org/documentation/agent/installation/bsd.html

==== Cas de pfSense ====

 * mettre à niveau notre Pfsense : passer de la 2.0.3-RELEASE (Freebsd 8.1-RELEASE) à la 2.1-RELEASE (Freebsd 8.3-RELEASE-p11) :
  * se connecter via le web au Pfsense
  * à la page d'accueil cliquer sur le lien de "upgrade"
  * laisser tourner
  * NB : la mise à jour va rebooter votre Pfsense, donc la faire en heure creuse.
  * '''ATTENTION''' : la mise à niveau va briser l'authentification Radius {{{
Fatal error: Class 'Auth_RADIUS_' not found in /usr/local/captiveportal/radius_authentication.inc on line 105
}}}
  . Pour corriger (un peu de bricolage) :
   1. sur l'interface web, à la page de configuration du portail captif (https://pfsense.wifi.ca.auf/services_captiveportal.php?zone=cpzone), chapitre "Authentification", changer le `Radius Protocol` de `PAP` à autre chose (n'importe lequel) et enregistrer.
   2. remettre le `Radius Protocol` à `PAP` et enregistrer. C'est tout !
 * si ce n'est déjà fait, activer (cela permettra de faire des copier/coller) l'accès ssh (pour le WAN, l'interface vers le parefeu central - avant Internet)
  * soit sur la console : option 14
  * soit via l'interface web : à cette page (adapter l'URL) https://pfsense.wifi.ca.auf/system_advanced_admin.php, voir le paragraphe "Secure Shell
 * lancer une session ssh sur votre Pfsense
 * la suite se passe d'ici (NB : voir ci-dessous pour le fichier de config avec les paramètres AUF) : https://wikit.firewall-services.com/doku.php/tuto/linux_divers/installer_fusioninventory_pfsense. 
 . Je vous en fais une copie :
  * installer les paquets (ça prend du temps, c'est long, soyez patient) : {{{
:> pkg_add -v -r p5-FusionInventory-Agent
:> pkg_add -v -r p5-LWP-Protocol-https
}}}
  * paramètres AUF du fichier de configuration : {{{
 :> mkdir -p /usr/local/etc/fusioninventory/
 :> cat << EOF > /usr/local/etc/fusioninventory/agent.cfg
 server=https://glpi.auf.org/glpi/plugins/fusioninventory/
 no-task=deploy
 no-ssl-check=1
 no-httpd=1
 logger=Syslog
 tag=PPi-Innnn
 daemon=0
EOF
}}}
  * un premier test : {{{
:> fusioninventory-agent --debug
}}}
  . Une fois ceci terminé, vous devriez voir votre Pfsense sur glpi.auf.org.

  * installer wget {{{
:> pkg_add -r -v wget
:> rehash
}}} puis télécharger le [[attachment:pfsense-fusioninventory-agent-daemon.sh|daemon dans `/usr/local/etc/rc.d/fusioninventory-agent.sh`]] : {{{
:> wget -O /usr/local/etc/rc.d/fusioninventory-agent.sh "http://wiki.auf.org/wikiteki/Projet/InventaireInformatique/D%C3%A9ploiementAgent?action=AttachFile&do=get&target=pfsense-fusioninventory-agent-daemon.sh"

:> chmod 755 /usr/local/etc/rc.d/fusioninventory-agent.sh
}}}


=== Android ===

==== Télécharger l'agent ====

Télécharger l'agent FusionInventory pour Android 1.0.1 :
 * Play Store : https://market.android.com/details?id=org.fusioninventory&amp;feature=search_result
 * Lien direct : http://forge.fusioninventory.org/attachments/download/454/FusionInventory-1.0.1.apk

==== Configuration ====
Pour ajouter l'adresse IP du serveur GLPI et le code inventaire, cliquez sur '''Global settings'''
 * '''''Server address''''' permet de spécifier l'adresse du serveur
 * '''''Tag''''' permet de spécifier le code inventaire

Source http://www.fusioninventory.org/documentation/agent/installation/android.html

'''Note''' : Actuellement, l'agent Fusion Inventory sous Android ne fonctionne pas si nous utilisons HTTPS au niveau du serveur (voir http://www.glpi-project.org/forum/viewtopic.php?pid=170191#p170191)