Déployer des pilotes sur des postes de travail Lenovo

Rédigé par Alexandre il y a 12 mois

#déploiement #windows #travail

Ayant récemment rencontré des problèmes de performance sur le parc de postes de travail Lenovo fraîchement déployés, je me suis dit que les pilotes de Windows Update n'étaient peut-être pas idéaux. Afin d'en avoir le cœur net, j'ai cherché une méthode permettant de déployer les pilotes à grande échelle. Heureusement pour moi, Lenovo fournit tout ce qu'il faut pour me faciliter la vie via deux outils :

  • Update Retriever : permet le téléchargement des pilotes
  • Thin Installer : permet de déployer les pilotes

Update Retriever

Une fois téléchargé et lancé, suivre les instructions suivantes :

  • Chemin d'accès du référentiel : un partage réseau (ex: \\nas.ykn.local\pilotes$\lenovo)
  • Licence : Ne pas afficher
  • Status : Actives
  • Continuer
  • Ajouter pour ajouter le modèle des postes (par exemple pour le modèle 20KH006DFR, saisir 20KH)
  • Tout sélectionner
  • Suivant
  • Terminer avec Finnois (oui, c'est mal traduit)

Thin Installer

La configuration de Thin Installer se fait via un fichier au format XML. Ci-dessous, le fichier que j'utilise. Il convient d'adapter la valeur après <RepositoryPath> pour correspondre à celle choisie dans Chemin d'accès du référentiel de la partie précédente.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <RepositoryPath>\\nas.ykn.local\pilotes$\lenovo</RepositoryPath>
    <LogPath></LogPath>
    <LanguageOverride>EN</LanguageOverride>
    <BlockSize>4096</BlockSize>
    <AskBeforeClosing>NO</AskBeforeClosing>
    <DisplayLicenseNotice>NO</DisplayLicenseNotice>
    <IgnoreLocalLicense>YES</IgnoreLocalLicense>
    <IgnoreRMLicCRCSize>YES</IgnoreRMLicCRCSize>
    <DebugEnable>NO</DebugEnable>
    <ContentMode>Active</ContentMode>
</configuration>

Thin Installer doit être déployé sur l'ensemble des postes du parc. A cette fin, j'ai écrit le script Powershell suivant :

$manufacturer = (Get-WmiObject -Class "Win32_ComputerSystem").Manufacturer

## IF the manufacturer is LENOVO
if ($manufacturer -eq "LENOVO") {
	# Go to the folder of this script
	Set-Location (Split-Path -parent $PSCommandPath)

	# Retrieve the full path of the executable file
	$installerPath = (Get-ChildItem ".\lenovothininstaller" -Filter "*.exe").FullName

	# Install
	Start-Process -Wait -PassThru -NoNewWindow -FilePath $installerPath -ArgumentList "/VERYSILENT ","/NORESTART","/CLOSEAPPLICATIONS"

	# Copy the configuration file
	Copy-Item -Force -Path ".\lenovothininstaller\ThinInstaller.exe.configuration" -Destination "C:\Program Files (x86)\ThinInstaller\ThinInstaller.exe.configuration"
}

A la fin de ce script, je copie le fichier de configuration de Thin Installer. Noter que le fichier est déposé au même endroit que l'exécutable d'installation.

Une fois le logiciel déployé, on peut facilement mettre à jour le poste en utilisant cette commande :

"C:\Program Files (x86)\ThinInstaller\Thininstaller.exe" /CM -search A -action INSTALL -noreboot -showprogress -IncludeRebootPackages 1,3,4

NB : pour la petite histoire, les problèmes de performance ont bien disparu avec l'installation des pilotes LENOVO.