PSWindowsUpdate modul za upravljanje Windows ažuriranjima iz PowerShell-a

Vrlo je prikladno koristiti poseban PowerShell modul za upravljanje Windows ažuriranjima iz naredbenog retka - PSWindowsUpdate. PSWindowsUpdate modul nije ugrađen u Windows i treći je modul dostupan u Technet Script Gallery. PSWindowsUpdate omogućava administratorima daljinsko provjeravanje, instaliranje, uklanjanje i skrivanje određenih ažuriranja na računalima i radnim stanicama. PSWindowsUpdate modul posebno je vrijedan kada se koristi za upravljanje ažuriranjima u Core izdanjima Windows poslužitelja koja nemaju grafičko sučelje, kao i prilikom postavljanja Windows slike u modu revizije.

sadržaj:

  • Instalirajte PSWindowsUpdate Modul upravljanja ažuriranjem
  • Pregled naredbi modula PSWindowsUpdate modula
  • Upravljanje Windows ažuriranjima na udaljenim računalima putem PowerShell-a
  • Nabavite popis dostupnih ažuriranja za Windows iz PowerShell-a
  • Install-WindowsUpdate: Instalirajte ažuriranja pomoću PSWindowsUpdate
  • Get-WUHistory: Pogledajte povijest instaliranih ažuriranja za Windows
  • Ukloni-WindowsUpdate: deinstaliraj ažuriranja
  • Hide-WindowsUpdate: kako sakriti nepotrebne nadogradnje pomoću programa PowerShell

Instalirajte PSWindowsUpdate Modul upravljanja ažuriranjem

Ako koristite Windows 10, možete instalirati modul PSWindowsUpdate iz mrežnog spremišta preko upravitelja paketa PackageManagement sa samo jednom naredbom:

Install-Module -Namestite PSWindowsUpdate

U mom se slučaju pojavilo upozorenje da je PSWindowsUpdate 1.5.2.6 već instaliran. Da biste instalirali noviju verziju, trebate pokrenuti naredbu:

Install-Module -Name PSWindowsUpdate -Force

Nakon što je instalacija dovršena, trebate provjeriti dostupnost paketa:

Get-Package -Namestite PSWindowsUpdate

Ako imate instaliranu stariju verziju sustava Windows (Windows 7 / 8.1 / Windows Server 2008 R2 / 2012 R2) ili nemate izravan pristup internetu, ručno možete instalirati modul PSWindowsUpdate..

PSWindowsUpdate modul može se instalirati na bilo koju podržanu verziju sustava Windows počevši od Viste / Windows Server 2008 sa instaliranim PowerShell 2.0 (ali preporučuje se PoSh 3.0 i noviji).

  1. Preuzmite najnoviju verziju modula PSWindowsUpdate sa stranice: https://gallery.technet.microsoft.com/scriptcenter/2d191bcd-3308-4edd-9de2-88dff796b0bc i otključajte preuzetu datoteku; imajte na umu da je u galeriji skripti TechNet dostupna samo stara verzija - v 1.5.6. Dok upravitelj paketa NuGet instalira PSWindowsUpdate 2.1.1.2 iz PowershellGallery. Dostupni cmdleti i parametri mogu se razlikovati u različitim verzijama modula..
  2. Raspakirajte arhivu s modulom u jednu od mapa % USERPROFILE% \ Documents \ WindowsPowerShell \ Modules ili % WINDIR% \ System32 \ WindowsPowerShell \ v1.0 \ Moduli (uz stalnu upotrebu modula ovo je najbolja opcija);
  3. Dopusti skriptiranje: Set-ExecutionPolicy -Scope Process -ExecutionPolicy neograničeno -Force
  4. Sada možete uvesti modul u svoju PowerShell sesiju: Ažuriranje PS-WindowsUpdate modula primjedba. U sustavu Windows 7 / Server 2008 R2 pri uvozu PSWindowsUpdate modula možete naići na pogrešku kao što je: Naziv "Unblock-File" nije prepoznat kao naziv cmdleta. Činjenica je da modul koristi neke funkcije koje su se pojavile samo u PowerShell 3.0. Za upotrebu ovih funkcija morat ćete nadograditi PowerShell ili ručno izbrisati liniju | Deblokirajte datoteku iz datoteke PSWindowsUpdate.psm1.

Nakon što instalirate PSWindowsUpdate modul na računalo, možete ga udaljeno instalirati na druga računala ili poslužitelje pomoću cmdleta Update-WUModule. Na primjer, da biste kopirali PSWindowsUpdate modul s vašeg računala na dva udaljena poslužitelja, izvršite naredbe (potreban vam je pristup udaljenim poslužiteljima putem SMB protokola, TCP port 445):

$ Targets = "Server1", "Server2"
Ažuriranje-WUModule -ComputerName $ Target -Local

Da biste spremili modul u mrežni direktorij za daljnji uvoz modula na druga računala, učinite:

Spremi-Modul -Name PSWindowsUpdate -Path \\ fs01 \ ps \

Pregled naredbi modula PSWindowsUpdate modula

Popis raspoloživih cmdleta modula može se prikazati ovako:

get-command-modul PSWindowsUpdate

Ukratko opisujemo svrhu naredbi modula:

  • Jasno WUJob - Upotrijebite Get-WUJob da biste pozvali posao WUJob u planer.
  • Download-WindowsUpdate (alias za Get-WindowsUpdate -Download) - dobiti popis ažuriranja i preuzeti ih;
  • Get-WUInstall, Install-WindowsUpdate (alias za Get-WindowsUpdate -Install) - instalirajte ažuriranja;
  • Sakrij-WindowsUpdate (alias za Get-WindowsUpdate -Hide: $ false) - sakrivanje ažuriranja;
  • Deinstalirajte-WindowsUpdate - uklanjanje ažuriranja pomoću Use Remove-WindowsUpdate;
  • dodati-WUServiceManager - registriranje poslužitelja ažuriranja (Windows Update Service Manager) na računalu;
  • Omogućiti-WURemoting - omogućiti pravila firewall-a koja omogućuju daljinsku upotrebu cmwleta PSWindowsUpdate;
  • Get-WindowsUpdate (Get-WUList) - prikazuje popis ažuriranja koja odgovaraju navedenim kriterijima, omogućava vam pronalaženje i instaliranje željenog ažuriranja. Ovo je glavni cmdlet PSWindowsUpdate modula. Omogućuje vam preuzimanje i instaliranje ažuriranja s WSUS poslužitelja ili Microsoft Update. Omogućuje vam odabir kategorija ažuriranja, posebnih ažuriranja i određivanje pravila za ponovno pokretanje računala prilikom instaliranja ažuriranja;
  • Get-WUApiVersion - Na računalo nabavite inačicu Windows Update Agenta
  • Get-WUHistory - prikaz popisa instaliranih ažuriranja (povijest ažuriranja);
  • Get-WUInstallerStatus - Provjera statusa usluge Windows Installer
  • Get-WUJob - Pokrenite zadatke za ažuriranje WUJob u Planeru zadataka
  • Get-WULastResults - datumi zadnjeg pretraživanja i instalacije ažuriranja (LastSearchSuccessDate i LastInstallationSuccessDate);
  • Get-WURebootStatus - omogućuje vam provjeru je li potrebno ponovno pokretanje da biste primijenili određeno ažuriranje;
  • Get-WUServiceManager - izlazni izvori za ažuriranje;
  • Get-WUSettings - Dohvati postavke klijenta za Windows Update
  • Pozovi-WUJob - daljinski pozivanje poslova WUJobs u zadatak Schduler da odmah izvršavaju zadatke PSWindowsUpdate.
  • Uklonite-WindowsUpdate - deinstalirati ažuriranje;
  • Uklonite-WUServiceManager - onemogućiti Windows Update Service Manager;
  • Set-PSWUSettings - spremite postavke modula PSWindowsUpdate u XML datoteku;
  • Set-WUSettings - Konfigurirajte postavke klijenta za Windows Update
  • Update-WUModule - ažurirajte modul PSWindowsUpdate (modul možete ažurirati na udaljenom računalu kopiranjem s trenutnog ili ažuriranje iz PSGallery).

Upravljanje Windows ažuriranjima na udaljenim računalima putem PowerShell-a

Gotovo svi cmdleti PSWindowsUpdate modula omogućuju vam kontrolu instalacije ažuriranja na udaljenim računalima. Za to se koristi atribut. -Naziv računala Host1, Host2, Host3.

Za upravljanje ažuriranjima na udaljenim računalima morate dodati njihova imena na popis pouzdanog računala winrm:

winrm postavljen winrm / config / client '@ TrustedHosts = "HOST1, HOST2, ..."

Instalirajte PSWindowsUpdate modul na udaljena računala i dopustite dllhost.exe da pristupi dinamičkim RPC portovima u vatrozidu.

Nabavite popis dostupnih ažuriranja za Windows iz PowerShell-a

Možete navesti ažuriranja dostupna za ovo računalo na poslužitelju ažuriranja pomoću naredbi Get-WindowsUpdate ili Get-WUList.

Da biste provjerili popis dostupnih ažuriranja na udaljenom računalu, učinite:

Get-WUList -ComputerName server2

Možete provjeriti odakle bi vaš Windows OS trebao primati ažuriranja. Pokrenite naredbu:

Get-WUServiceManager

ServiceID je upravljano IsDefault Name --------- --------- --------- ---- 8b24b027-1dee-babb-9a95-3517dfb9c552 False False Falat DCat Flight Prod 855e8a7c -ecb4-4ca3-b045-1dfa50104289 Lažna lažna Windows trgovina (DCat Prod) 3da21691-e39d-4da6-8a4b-b43877bcb1b7 True True Ažuriranje servisa za Windows Server 9482f4b4-e343-43b6-b170-9a65bcsec

Kao što vidite, računalo je konfigurirano za primanje ažuriranja s lokalnog WSUS poslužitelja (Windows Server Update Service = True). U tom slučaju trebali biste vidjeti popis ažuriranih odobrenja za vaše računalo na WSUS-u.

Ako želite skenirati svoje računalo na poslužiteljima Microsoft Update (osim ažuriranja za Windows, ti poslužitelji sadrže ažuriranja za Office i ostale proizvode) na Internetu, pokrenite naredbu:

Get-WUlist -MicrosoftUpdate

Dobijate upozorenje:

Get-WUlist: Servis Windows Update nije pronađen na računalu

Da biste omogućili skeniranje u programu Microsoft Update, pokrenite naredbu:

Add-WUServiceManager -ServiceID "7971f918-a847-4430-9279-4a52d1efe18d" -AddServiceFlag 7

Sada možete skenirati u Microsoft Update. Kao što vidite, u ovom su slučaju pronađena dodatna ažuriranja za Microsoft Visual C ++ 2008 i Microsoft Silverlight.

Da biste provjerili inačicu Windows Update Agenta na računalu, pokrenite naredbu:

Get-WUApiVersion

ComputerName PSWindowsUpdate PSWUModuleDll ApiVersion WuapiDllVersion ------------ --------------- ------------- ----- ----- --------------- FS01 2.1.1.2 2.0.6995.28496 8.0 10.0.14393.2879

Da biste određene proizvode ili određene pakete uklonili s popisa ažuriranja koje vaše računalo prima, možete ih isključiti:

  • Kategorije (-NotCategory);
  • Naziv (-NotTitle);
  • Broj ažuriranja (-NotKBArticleID).

Na primjer, iz popisa ažuriranja upravljačkih programa, OneDrive i jednog KB-a isključujemo:

Get-WUlist -Notkategorija "Vozači" -NotTitle OneDrive -NotKBArticleID KB4533002

Install-WindowsUpdate: Instalirajte ažuriranja pomoću PSWindowsUpdate

Da biste automatski preuzeli i instalirali sva dostupna ažuriranja za svoj Windows, učinite:

Instalirajte-WindowsUpdate -MicrosoftUpdate -AcceptAll -AutoReboot

Tipka AcceptAll omogućava odobrenje instalacije za sve pakete, a Automatsko ponovno pokretanje omogućuje Windows automatsko ponovno pokretanje nakon instaliranja ažuriranja..

Možete spremiti povijest instaliranja ažuriranja u datoteku dnevnika (može se koristiti umjesto WindowsUpdate.log).

Install-WindowsUpdate -AcceptAll -Install -AutoReboot | Izvađena datoteka "c: \ $ (get-date -f yyyy-MM-dd) -WindowsUpdate.log" -force

Instaliraju se samo određena ažuriranja prema KB broju:

Get-WindowsUpdate -KBArticleID KB2267602, KB4533002 -Install

U tom slučaju morate potvrditi instalaciju svakog ažuriranja ručno.

Ako želite isključiti neka ažuriranja s instalacijskog popisa, učinite:

Install-WindowsUpdate -NotCategory "Drivers" -NotTitle OneDrive -NotKBArticleID KB4011670 -AcceptAll -IgnoreReboot

Modul vam omogućuje daljinsko pokretanje instaliranja ažuriranja na nekoliko računala ili poslužitelja odjednom (PSWindowsUpdate modul mora biti prisutan na računalima). To je posebno prikladno jer omogućuje administratoru da ručno ne uđe na sve poslužitelje tijekom predviđene instalacije ažuriranja. Sljedeća naredba instalirat će sva dostupna ažuriranja na tri udaljena poslužitelja:

Invoke-WUInstall -ComputerName server1, server2, server3 -Script ipmo PSWindowsUpdate; Get-WindowsUpdate -Install -AcceptAll -AutoReboot | Izlazna datoteka C: \ Windows \ PSWindowsUpdate.log -Confirm: $ false -Verbose -SkipModuleTest -RunNow

U modulu PSWindowsUpdate 2.1 morate umjesto Invoke-WUInstall cmdleta koristiti Invoke-WUJob. Ovaj cmdlet stvara posao planera na udaljenom računalu koje pokreće SYSTEM.

Stoga u novim verzijama modula za daljinsku instalaciju ažuriranja koristite sljedeću naredbu:

$ ServerNames = "server1, server2, server3"
Invoke-WUJob -ComputerName $ ServerNames -Script ipmo PSWindowsUpdate; Install-WindowsUpdate -AcceptAll | Izvanmrežna datoteka C: \ Windows \ PSWindowsUpdate.log -RunNow -Confirm: $ false

Možete instalirati ažuriranja na udaljeno računalo i administratoru poslati izvješće e-poštom:

Install-WindowsUpdate -ComputerName server1 -MicrosoftUpdate -AcceptAll - IgnoreReboot -SendReport -PSWUSettings @ SmtpServer = "smtp.winitpro.ru"; From = "[email protected]"; To = "[email protected]"; Port 25 -Verboza

Get-WUHistory: Pogledajte povijest instaliranih ažuriranja za Windows

Pomoću naredbe Get-WUHistory možete dobiti popis ažuriranja instaliranih na računalu ranije ili ručno.

Možete dobiti informacije o datumu instalacije određenog ažuriranja:

Get-WUHistory | Gdje-objekt $ _. Naslov-podudaranje "KB4517389" | Select-Object * | ft

Da biste dobili informacije o instaliranom ažuriranju na nekoliko udaljenih računala, možete koristiti sljedeći kôd:

"server1", "server2" | Get-WUHistory | Gdje-objekt $ _. Naslov-podudaranje "KB4011634" | Odaberi-objekt * | ft

Ukloni-WindowsUpdate: deinstaliraj ažuriranja

Za ispravno uklanjanje ažuriranja koristite cmdlet Uklonite-WindowsUpdate. Trebate samo navesti KB broj kao argument parametru KBArticleID. Da biste odgodili automatsko ponovno pokretanje računala, možete dodati ključ -norestart:

Ukloni-WindowsUpdate -KBArticleID KB4011634 -NoRestart

Hide-WindowsUpdate: kako sakriti nepotrebne nadogradnje pomoću programa PowerShell

Možete sakriti određene nadogradnje tako da ih servis Windows Update nikada ne instalira na vaše računalo (najčešće skrivaju ažuriranja upravljačkog programa). Na primjer, da biste sakrili ažuriranja KB2538243 i KB4524570, pokrenite sljedeće naredbe:

$ HideList = "KB2538243", "KB4524570"
Get-WindowsUpdate -KBArticleID $ HideList -Hide

ili upotrijebite pseudonim:

Sakrij-WindowsUpdate -KBArticleID $ HideList -Verbose

Sljedeći put ako pretražite ažuriranja pomoću naredbe Get-WUlist skrivena ažuriranja neće se pojaviti na popisu zakrpa dostupnih za instalaciju.

Možete navesti ovako skrivena ažuriranja na ovom računalu:

Get-WindowsUpdate -IsHidden

Imajte na umu da se atribut H (skriveni) pojavio u stupcu Status skrivenih ažuriranja.

Sakrivanje nekih ažuriranja možete poništiti na sljedeći način:

Get-WindowsUpdate -KBArticleID $ HideList -WithHidden -Hide: $ false

ili tako:

Prikaži-WindowsUpdate -KBArticleID $ HideList

Za one koji se osjećaju neugodno u PowerShell konzoli, mogu preporučiti grafički program Windows Update MiniTool za upravljanje ažuriranjima za Windows 10..