2013-03-02 2 views
5

Возможно ли это?Powershell - установить обновления для Windows?

Я думаю, нам нужно было бы заставить WUAgent каким-то образом запустить обнаружение, но я хотел бы по существу загрузить и установить обновления, а затем перезагрузить их как часть сценария.

Это будет частью более крупного сценария, чтобы в основном построить ванильный ящик 2008R2 до DC через Powershell.

ответ

2

Я предлагаю использовать этот скрипт

Function WSUSUpdate { 
$Criteria = "IsInstalled=0 and Type='Software'" 
$Searcher = New-Object -ComObject Microsoft.Update.Searcher 
try { 
    $SearchResult = $Searcher.Search($Criteria).Updates 
    if ($SearchResult.Count -eq 0) { 
     Write-Output "There are no applicable updates." 
     exit 
    } 
    else { 
     $Session = New-Object -ComObject Microsoft.Update.Session 
     $Downloader = $Session.CreateUpdateDownloader() 
     $Downloader.Updates = $SearchResult 
     $Downloader.Download() 
     $Installer = New-Object -ComObject Microsoft.Update.Installer 
     $Installer.Updates = $SearchResult 
     $Result = $Installer.Install() 
    } 
} 
catch { 
    Write-Output "There are no applicable updates." 
    } 
} 

WSUSUpdate 
If ($Result.rebootRequired) { Restart-Computer } 

Источник: https://gist.github.com/jacobludriks/9ca9ce61de251a5476f1

Смежные вопросы