Je ne sais pas si vous avez la même expérience que moi mais les mises à jour automatiques de Windows, pourtant programmées le lundi à 3:00, ont parfois tendance à s’exécuter n'importe quand. Du coup, la tentation est grande de les désactiver en se disant qu'on les fera plus tard à la main ou qu'on mettra en place un serveur WSUS (floscel 😉 )
J'ai trouvé sur le net un petit script Powershell sympa qui se charge de les télécharger, installer et au besoin relancer le serveur. Du coup, il ne reste plus qu'à le programmer à l'heure qui convient.
cls$listonly=$true$allowreboot=$truefunctionGet-WIAStatusValue($value) { switch-exact ($value) { 0 {"NotStarted"} 1 {"InProgress"} 2 {"Succeeded"} 3 {"SucceededWithErrors"} 4 {"Failed"} 5 {"Aborted"} } } $needsReboot=$false$UpdateSession=New-Object-ComObjectMicrosoft.Update.Session$UpdateSearcher=$UpdateSession.CreateUpdateSearcher() Write-Host" - Rercherche de mises à jour"$SearchResult=$UpdateSearcher.Search("IsAssigned=1 and IsHidden=0 and IsInstalled=0") Write-Host" - Trouvé [$($SearchResult.Updates.count)] mises à jour à télécharger et installer"Write-Hostforeach($Updatein$SearchResult.Updates) { # Add Update to Collection$UpdatesCollection=New-Object-ComObjectMicrosoft.Update.UpdateCollif ( $Update.EulaAccepted -eq0 ) { $Update.AcceptEula() } $UpdatesCollection.Add($Update) | out-nullWrite-Host" + $($Update.Title)"if ($listonly-ne$true) { # DownloadWrite-Host" ++ Téléchargement"$UpdatesDownloader=$UpdateSession.CreateUpdateDownloader() $UpdatesDownloader.Updates =$UpdatesCollection$DownloadResult=$UpdatesDownloader.Download() $Message=" - Téléchargement {0}"-f (Get-WIAStatusValue$DownloadResult.ResultCode) Write-Host$message# InstallWrite-Host" ++ Installation"$UpdatesInstaller=$UpdateSession.CreateUpdateInstaller() $UpdatesInstaller.Updates =$UpdatesCollection$InstallResult=$UpdatesInstaller.Install() $Message=" - Installation {0}"-f (Get-WIAStatusValue$DownloadResult.ResultCode) Write-Host$messageWrite-Hostif ($allowreboot-eq$true) { $needsReboot=$installResult.rebootRequired } } } if($needsReboot) { restart-computer }
SynerGeek.fr Informatique & Veille Technologique
