Informaticienzero

Le blog d'un informaticien passionné de partage, d'échanges et surtout, pas si zéro que ça.

On peut se dire ce qu’on veut, Windows s’utilise très majoritairement avec son interface graphique. Mais voilà, parfois, il faut la ligne de commande pour se faciliter la vie. La situation résumée : je veux installer les mises à jour de Windows 7 dans une VM au travail, mais les administrateurs systèmes bloquent Windows Update pour choisir quelle mise à jour installer et quand.

J’ai résolu mon premier problème avec un excellent logiciel du nom de Windows Updates Downloader, qui permet même de sélectionner celles que l’on aimerait récupérer (sécurités, optionnelles, .NET, etc). Mais bon, installer 350+ mises à jour à la main, en double-cliquant puis en redémarrant après (presque) chaque installation, c’est trop lourd !

C’était sans compter sur ce blog. J’ai repris son script en l’améliorant un peu. Pour accélérer grandement le script, j’ai désactivé la Restauration. À vous de voir si vous courrez le risque ou non d’enchaîner les mises à jour sans une seule sauvegarde intermédiaire. Également, j’ai désactivé Windows Update (Panneau de configuration -> Windows Update -> Modifier les paramètres -> Ne jamais rechercher de mises à jour).

$dir = (Get-Item -Path ".\\" -Verbose).FullName
Foreach($item in (ls $dir *.msu -Name | sort -property LastWriteTime))
{
	echo $item
	$item = $dir + "\\" + $item
	net stop wuauserv
	wusa $item /quiet /norestart | Out-Null
}