Sei già un cliente NinjaOne? Effettua il login per visualizzare le altre guide e gli ultimi aggiornamenti.

NinjaOne Patching: le patch del sistema operativo installate non vengono visualizzate nella cronologia degli aggiornamenti di Windows

Problema

Questo articolo descrive un problema per cui le patch del sistema operativo Microsoft Windows installate da NinjaOne non vengono visualizzate nella cronologia di Windows Update.

Ambiente

Patch NinjaOne

Causa

A partire da Windows 10, Microsoft ha modificato la schermata ImpostazioniWindows UpdateCronologia aggiornamenti in modo da mostrare solo gli aggiornamenti installati direttamente da Windows. Di conseguenza, gli aggiornamenti installati da NinjaOne non vengono visualizzati nell'elenco degli aggiornamenti, anche se sono stati installati correttamente.

La mancanza di queste informazioni non significa che gli aggiornamenti siano stati saltati o siano mancanti. Windows continua a registrarli nel proprio database di manutenzione e rimangono completamente interrogabili, verificabili e disinstallabili.

Risoluzione

Tutte le patch del sistema operativo Windows installate tramite NinjaOne utilizzano l'API ufficiale di Windows Update di Microsoft per installare le patch. L'unica limitazione è che non vengono visualizzate nell'elenco della cronologia di Windows Update nella pagina Impostazioni. Questo comportamento è previsto su Windows 10 e versioni successive ed è una limitazione intrinseca di Windows stesso.

Sebbene l'interfaccia utente della cronologia di Windows Update possa non visualizzarli, è comunque possibile confermare l'installazione degli aggiornamenti in più posizioni affidabili, sia all'interno di NinjaOne che sul computer Windows.

Metodo 1: conferma tramite la vista Patch del sistema operativo NinjaOne installate (consigliato)

Questa vista mostra tutti gli aggiornamenti registrati da Windows, indipendentemente dal fatto che siano stati installati da NinjaOne, Windows Update o un altro strumento. NinjaOne interroga la cronologia completa di Windows Update Agent memorizzata sul dispositivo, mostrando ogni record di installazione. Se un aggiornamento di Windows è elencato nella vista installata di Ninja, significa che Windows lo ha registrato come installato su quel computer.

Per visualizzare le patch del sistema operativo installate, vai su DashboardPatchPatch del sistema operativoInstallate.

OSPatchDisplay_Nav.png
Figura 1: Dashboard → Patch → Patch del sistema operativo → Installate (clicca per ingrandire)

Metodo 2: confermare nell'elenco di disinstallazione degli aggiornamenti di Windows

Anche se la cronologia degli aggiornamenti in Windows non mostra le patch del sistema operativo installate, l'elenco Disinstalla aggiornamenti di solito lo fa. Windows popola questa pagina dal database di manutenzione, non dall'elenco della cronologia di Windows Update, in modo da mostrare tutti gli aggiornamenti disinstallabili. Questo metodo non richiede la disinstallazione del software; sarà sufficiente verificarne la presenza nell'elenco. 

  1. In Windows, vai su ImpostazioniWindows Update, quindi seleziona Cronologia aggiornamenti.
OSPatchDisplay_WinUpdateHistory.png
Figura 2: Impostazioni → Windows Update → Cronologia aggiornamenti (clicca per ingrandire)
  1. Scorrere fino a Disinstalla aggiornamenti.
OSPatchDisplay_UninstallUpdates.png
Figura 3: Windows Update → Disinstalla aggiornamenti (clicca per ingrandire)

Metodo 3: conferma tramite query degli aggiornamenti installati tramite PowerShell

È possibile interrogare direttamente gli aggiornamenti installati utilizzando PowerShell. Questo script elencherà i risultati dalla cronologia di Windows Update Agent (WUA) sul dispositivo:

# Truncate helper
function Trunc($text, $max = 50) {
   if ($null -eq $text) { return "" }
   if ($text.Length -le $max) { return $text }
   return $text.Substring(0, $max) + "..."
}

$Session = New-Object -ComObject Microsoft.Update.Session 
$Searcher = $Session.CreateUpdateSearcher()
$HistoryCount = $Searcher.GetTotalHistoryCount()
$HistoryPatch = $Searcher.QueryHistory(0, $HistoryCount) | Select-Object `
   Date,
   @{ Name = "Title"; Expression = { Trunc $_.Title 60 } },
   @{ Name = "Operation"; Expression = {
       switch ($_.operation) {
           1 { "Installation" }
           2 { "Uninstallation" }
           3 { "Altro" }
       }
   }},
   @{ Nome = "Stato"; Espressione = {
       switch ($_.resultcode) {
           1 { "In corso" }
           2 { "Riuscito" }
           3 { "Riuscito con errori" }
           4 { "Fallito" }
           5 { "Interrotto" }
       }
   }},
   @{ Nome = "ClientApplicationID"; Espressione = { Trunc $_.ClientApplicationID 40 } }

$HistoryPatch | Format-Table -AutoSize

Questo script interroga il database Windows Update Extensible Storage Engine (ESE), situato sul computer in C:WindowsSoftwareDistributionDataStoreDataStore.edb, e recupera tutti gli aggiornamenti installati dalla cronologia del dispositivo locale, tra cui:

  • Data di installazione
  • Titolo della patch
  • Operazione
  • Stato
  • Chi ha installato l'aggiornamento

Domande frequenti

Passi successivi