Mai jos este ghidul pe care îl folosesc atunci când depanez o instalare WSUS defectă. Aceasta se poate manifesta sub forma unei erori de consolă a serverului, a mereu popularului „pur și simplu nu se raportează” sau prin jurnalul de evenimente. Vă voi ghida prin componentele WSUS și cum să verificați și să vă asigurați că fiecare dintre ele funcționează corect.
În primul rând, o notă despre ceea ce este disponibil pe platforma dumneavoastră.
Dacă sunteți pe Windows 7/8/Server 2008R2/2012R2, atunci wuauclt
funcționează pentru dumneavoastră.
Singura comandă reală pe care trebuie să o cunoașteți este wuauclt /resetauthorization /detectnow
.wauauclt /reportnow
Nu face ceea ce credeți și nu este foarte utilă.
Dacă sunteți pe Windows 10/Server 2016 atunci wuauclt a fost deprins și aveți UsoClient
.usoclient.exe startscan
pentru a detecta patch-urile lipsăusoclient.exe refreshsettings
pentru a reîmprospăta setările dacă au fost făcute modificăriusoclient.exe startdownload
pentru a descărca patch-uriusoclient.exe startinstall
pentru a instala patch-uri
Aveți, de asemenea, opțiunea de a folosi Powershell pentru a iniția o cerere de scanare.
(New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()
Vorbind de Powershell, Microsoft pune la dispoziție o serie de cmdlet-uri pentru gestionarea serverului WSUS. pentru a vedea dacă acestea vă sunt disponibile rulați
Get-Command -Module UpdateServices
Aceste cmdlet-uri sunt orientate în primul rând către implementarea și gestionarea serverului, a patch-urilor și a computerelor, nu către depanare.
Pe client există un modul WindowsUpdate, dar singura sa funcție este Get-WindowsUpdateLog, care este utilizat pentru generarea unui fișier WindowsUpdate.log lizibil în Windows 10.
Există un modul PS de la o terță parte pentru gestionarea Windows Update pe client.
Install-Module PSWindowsUpdate Import-Module PSWindowsUpdate Add-WUServiceManager -ServiceID 7971f918-a847-4430-9279-4a52d1efe18d Get-Command -Module PSWindowsUpdate Get-WUList –MicrosoftUpdate Get-WUInstall –MicrosoftUpdate –AcceptAll –AutoReboot
Bază de date
WSUS are opțiunea de a utiliza o bază de date internă WID (Windows Internal DB) sau SQL. Voi presupune că este instalat cu WID la calea implicită de C:\Windows\WID\
.
Erorile legate de baza de date (altele decât fragmentarea) apar de obicei în momentul instalării, adesea în timpul secvenței de sarcini post-instalare.
Chiar dacă este posibil să vă conectați la WID și să renunțați la SUSDB, erorile din această etapă sunt de obicei cel mai bine rezolvate printr-o dezinstalare și reinstalare completă.
În scop de referință, voi preciza că puteți utiliza fie SQLCMD, fie SQL Mgmt Studio pentru a vă conecta la BD.
Șirul de conexiune este np:\.\pipe\MICROSOFT##WID\tsql\query
select name from sys.sysdatabasesdrop table susdbselect name from sys.sysdatabases
Dezinstalare
Dezinstalare utilizând Server Manager.
Asigurați-vă că dosarul de conținut WSUS a dispărut, precum și site-ul de administrare IIS WSUS.
Dezinstalarea WSUS nu elimină întotdeauna WID-ul. Eliminați-l în Powershell cu Uninstall-WindowsFeature -Name windows-internal-database
Reboot și ștergeți fișierele c:\windows\WID\SUSDB.mdf
și SUSDB_log.ldf
.
Instalare
Pe lângă selectarea rolului WSUS, Windows instalează ASP.NET 4.6, RSAT Tools, IIS și serviciul de activare a proceselor Windows.
Instalează de la un prompt administrativ Powershell
Install-WindowsFeature -Name Updateservices,UpdateServices-WidDB,UpdateServices-services -IncludeManagementTools
Apoi, înainte de a lansa GUI, executați:
Verifică clientul
Există destul de multe cauze potențiale pentru ca un client să nu primească actualizări. Voi trece printr-o serie de pași de depanare și la final voi da două scripturi pentru a „reseta” clientul dacă nimic altceva nu funcționează.
Verificați spațiul liber pe hard disk.
Verificați jurnalul Windowsupdate.
Pe Windows 10 deschideți un prompt administrativ powershell și rulați Get-Windowsupdatelog
. Jurnalul va fi pe desktop. Așteptați ca comanda să se termine de executat.
Pe Windows 7 verificați C:\Windows\WindowsUpdate.log
Acest lucru ar trebui să indice dacă problema se bazează pe client sau este o problemă de comunicare cu un punct final la distanță.
Cel mai simplu prim pas în depanarea clientului este să rulați Windows Update Troubleshooter.
Pe Windows 10 mergeți la site-ul Microsoft iFixIt for WSUS.
Acesta vă va solicita să descărcați Windows Update Troubleshooter (în format de fișier cab). Salvați acest lucru și rulați-l.
Alegerea Windows 7 de pe această pagină vă solicită să faceți clic dreapta pe Network (în tava de sistem) și „Troubleshoot problems”. Probabil că puteți sări peste acest pas.
Pe Windows 10 încercați o verificare online a actualizărilor.
Verificați dacă serviciul rulează.Get-Service -Name wuauserv
În continuare, verificați și asigurați-vă că clientul primește setările WSUS de la Group Policy.
Executați gpresult /scope computer
pentru a vedea dacă politica de setări WSUS este aplicată pe mașină. Cercetați registrul clientului pentru setările WSUS cu Get-ItemProperty HKLM:\Software\Policies\Microsoft\Windows\WindowsUpdate
Telnet poate fi utilizat pentru a verifica problemele de conectivitate a porturilor. Dacă încercați o conexiune telnet la un port deschis și accesibil, telnet va deschide o nouă fereastră de comandă goală. Dacă portul este inaccesibil, comanda va eșua pur și simplu. Încercați să stabiliți o conexiune la serverul WSUS și la port. Dacă conexiunea eșuează, verificați setările firewall.telnet wsus.server.com 8530
Să folosim Powershell pentru a testa conectivitatea.Test-NetConnection -ComputerName <WSUS_Server> -Port 8530 -InformationLevel Detailed
Nu uitați pasul evident de verificare a jurnalului de evenimente.Registrul de evenimente al aplicației, precum și jurnalele de aplicații și servicii > Microsoft > Windows > WindowsUpdateClient
Câteodată, agenții antivirus sau alți agenți de securitate pentru endpoint-uri pot interfera cu comunicațiile în rețea. Luați în considerare dezactivarea sau dezinstalarea acestora pentru testare.
Executați sfc /scannow
de la un prompt de comandă administrativ pentru a verifica dacă există corupție de fișiere care poate afecta clientul.
Dacă aveți atât clienți care funcționează cât și clienți care nu funcționează în WSUS, verificați c:\program files\update services\WebServices\ClientWebServices
pentru un fișier web.config
și comparați un fișier care funcționează cu un fișier care nu funcționează pentru diferențe.
Dacă acest client provine dintr-o imagine a sistemului de operare și Sysprep nu a fost rulat, atunci problema poate fi că mai mulți clienți folosesc aceeași cheie SUSClientID.Verificați HKLM\Software\Microsoft\Windows\CurrentVersion\WIndowsUpdate
și ștergeți SUSClientID
curent.
Executați wuauclt /resetauthorization /detectnow
dintr-un prompt de comandă ridicat.
Secvența de mai jos va șterge memoria cache locală a clientului Windows Update
Secvența de mai jos va reînregistra o mașină cu serverul WSUS:
Verificați serverul
Verificați spațiul liber pe hard disk, pentru volumul de boot și volumul de depozit.
Verificați serviciul Windows UpdateGet-Service -name WsusService
Verificați serviciul IISGet-Service -name W3SVC
Serverele ascultă? Verificați porturile deschise.netstat -an | findstr 853*
Puteți naviga la
You should see a blue and tan Client Service info page.
If not, we can try resetting the port. Open an elevated command prompt and run wsusutil usecustomwebsite false
. Acest lucru va schimba portul pe care WSUS îl folosește de la 8530 la 80, deci asigurați-vă că nu rulează nimic pe portul 80.
Acum rulați wsusutil usecustomwebsite true
urmat apoi de iisreset /restart
. Acest lucru schimbă portul înapoi la 8530 și "resetează" configurația.
Verificați regulile de firewall.
Verificați logarea pe partea serverului: c:\program files\updateservices\logfiles\SoftwareDistribution
Executați sfc /scannow
pentru a verifica corupția fișierelor.
WSUSUtil.exe
-
wsusutil.exe reset
- Verifică dacă fiecare rând de metadate de actualizare din baza de date are fișiere de actualizare corespunzătoare stocate în sistemul de fișiere. Dacă fișierele de actualizare lipsesc sau au fost corupte, WSUS descarcă din nou fișierele de actualizare.
-
wsusutil.exe checkhealth
- Controlați jurnalul de evenimente al aplicației pentru intrări cu sursa „Windows Server Update Services”
-
wsusutil.exe usecustomwebsite
- Schimbă portul pe care îl utilizează WSUS. De asemenea, „resetează” portul în timpul modificării.
IIS
Verifică dacă există erori de conectare http în c:\windows\system32\logfiles\httperr\
Verifică legăturile IP.
Verifică pentru a se asigura că Pool-ul de aplicații rulează.
Verificați dacă există erori de conectare în jurnalele IIS c:\inetpub\logs\logfiles
Instalarea implicită a IIS de către programul de instalare WSUS nu instalează însă componenta de logare.
Trebuie să activați acest lucru în Manage Computer > Roles > Web Server > Web Server > Health & Diag > HTTP Logging
Și iată că ați reușit. Dacă urmarea acestui ghid nu a rezolvat problema, sperăm că cel puțin ați dat peste componenta care funcționează defectuos și aveți o idee mai bună unde să vă concentrați căutările pe Google.
.