Installation silencieuse de l’agent FusionInventory sous Windows

FusionInventory est le plugin de la solution Open Source de gestion de parc informatique et de ticketing GLPI . Son objet est de remonter les données d’inventaire des stations de travail, des serveurs, des téléphones Android ou encore des imprimantes réseau, des switchs et des routeurs via SNMP.

Aide de l’agent FusionInventory

Pour obtenir l’aide à partir de la dernière version de l’agent FusionInventory, il vous suffit de taper à partir de la ligne de commande sous Windows :

La page francisée de l’aide, pour cette version n’existe pas. Vous devez vous rapatrier pour la version anglaise !

Installation de l'agent FusionInventory sous Windows

Installation silencieuse en ligne de commande

Les trois paramètres que vous devez changer pour une exécution en mode service sous Windows sont :

fusioninventory-agent_windows-x64_2.5.2.exe /acceptlicense /execmode=service /installtasks=Collect,Deploy,Inventory,NetDiscovery,NetInventory /runnow /S /httpd /httpd-ip=0.0.0.0 /httpd-port=62354 /httpd-trust='192.168.1.0/24,fe80::/64,127.0.0.0/8,::1/128' /server='https://195.154.102.202/glpi/plugins/fusioninventory' /logfile=64 /no-ssl-check /password=admin /user=admin /scan-homedirs /scan-profiles /tag='dsfc' /tasks=Collect,Deploy,Inventory,NetDiscovery,NetInventory /add-firewall-exception

La nouvelle installation écrase l’ancienne. Il n’y a donc pas lieu de procéder à une désinstallation préalable !

Installation par script PowerShell

Le script PowerShell ci-dessous exige le passage de 6 paramètres :

Param ([string]$path, [string]$ver, [string]$tag, [string]$computer, [string]$httpdtrust, [string]$serverglpi) 
Invoke-Command -ComputerName $computer -ScriptBlock{
    If([IntPtr]::Size -eq 8)
    {
        $platform='x64'
    }
    Else
    {
        $platform='x86'
    }
    If((Get-Service|Select Name|Where Name -eq 'FusionInventory-Agent').Name)
    {
        Stop-Service -Name 'FusionInventory-Agent'
    }
    $cmd=$using:path+'\fusioninventory-agent_windows-'+$platform+'_'+$using:ver+'.exe'
    $arg1='/S'
    $arg2='/acceptlicense'
    $arg3='/add-firewall-exception'
    $arg4='/execmode=service'
    $arg5='/runnow'
    $arg6="/httpd-trust='" + $using:httpdtrust + "'"
    $arg7='/scan-homedirs'
    $arg8='/scan-profiles'
    $arg9="/server='" + $using:serverglpi + "'"
    $arg10='/tag='+$using:tag
    $arg11='/installtype=from-scratch'
    #"$cmd $arg1 $arg2 $arg3 $arg4 $arg5 $arg6 $arg7 $arg8 $arg9 $arg10 $arg11"
    & $cmd $arg1 $arg2 $arg3 $arg4 $arg5 $arg6 $arg7 $arg8 $arg9 $arg10 $arg11
    If((Get-Service|Select Name|Where Name -eq 'FusionInventory-Agent').Name)
    {
        Start-Service -Name 'FusionInventory-Agent'
    }
}

Ainsi, pour l’installation de l’agent 2.5.12 64 bits à l’aide de ce script PowerShell, j’ai tapé en ligne de commandes :

powershell.exe ./install-fusioninventory.ps1  -path 'f:\install' -ver '2.5.12' -tag 'dsfc-dsi' -computer 'ldlcbien' -httpdtrust '127.0.0.1,localhost,192.168.1.0/24' -serverglpi 'httpd://195.154.102.202/glpi/plugins/fusioninventory/'

La base de registre

Tous les paramètres choisis au moment de l’installation sont consignés dans le registre au niveau de la clé HKEY_LOCAL_MACHINE\SOFTWARE\FusionInventory-Agent :

Installation silencieuse de l'agent FusionInventory sous Windows

GLPI  / FusionInventory