Windows Server 2019 Essentials si spegne il lunedì: diagnosi e soluzione del Licensing Compliance Service (silsvc)

Se il tuo server HP con Windows Server 2019 Essentials si spegne puntualmente il lunedì tra le 8:30 e le 10:30 (PST) senza errori hardware, quasi certamente è il servizio di conformità licenze a forzare l’arresto. Qui trovi come riconoscerlo, diagnosticarlo e risolverlo definitivamente.

Indice

Scenario reale e sintomi

Il comportamento osservato è un arresto pulito e ricorrente, visibile nei log come Evento 1074 generato dal processo silsvc.exe (Server Infrastructure Licensing Service), con messaggi del tipo:

“Licensing Compliance Service caused a shutdown”.

In genere non compaiono errori critici di sistema o di alimentazione nelle ore immediatamente precedenti, proprio perché non si tratta di uno spegnimento improvviso. È un comportamento intenzionale progettato per far rispettare i vincoli di licenza di Windows Server 2019 Essentials.

Cos’è il Licensing Compliance Service

Server Infrastructure Licensing (silsvc) è un servizio che verifica periodicamente che l’installazione di Windows Server 2019 Essentials rispetti i requisiti del prodotto. Se rileva violazioni, crea eventi nel canale dedicato e, a tutela della licenza, può iniziare una chiusura controllata dell’host.

Il controllo di conformità avviene mediamente ogni circa sette giorni; in molte installazioni si osserva la finestra del lunedì mattina. Il risultato è uno spegnimento programmato che si ripete ciclicamente finché la configurazione non rientra nei limiti previsti.

Perché accade

Le cause più comuni risiedono in Active Directory, virtualizzazione, numero di utenti e dispositivi, oppure nell’attivazione della licenza. La tabella seguente riassume le tipologie di violazioni più frequenti:

CategoriaPossibili violazioni
Active DirectoryPresenza di più di un Domain Controller nel dominio. Essentials non detiene tutti i ruoli FSMO (Schema, Domain Naming, RID, PDC Emulator, Infrastructure). Esistono trust bidirezionali con altri domini o foreste.
VirtualizzazionePiù di una istanza attiva (fisica e/o virtuale) dell’OS oppure VM Essentials duplicate/replicate su Hyper‑V.
Limiti utenti/dispositiviSuperamento dei limiti dell’edizione Essentials: 25 utenti o 50 device nel dominio.
Licenza/attivazioneProduct Key non attivato, versione di valutazione scaduta, chiave errata o stato di attivazione inconsistente.

Dove leggere la prova dell’infrazione

Il canale eventi da monitorare è:

Applications and Services Logs → Microsoft → Windows → Server Infrastructure Licensing → Operational

Gli ID 100, 101, 102 descrivono con precisione quale regola è stata infranta (ad es. presenza di un secondo DC, trust rilevata, superamento del limite dispositivi). L’Evento 1074 nel registro di sistema è l’effetto finale: documenta “chi” ha avviato l’arresto (processo silsvc.exe) e la motivazione.

Procedura rapida di diagnosi

  1. Apri Event Viewer
    Vai al canale Server Infrastructure Licensing → Operational e cerca gli ID 100‑102 per capire la violazione esatta. Annota ora e contenuto del messaggio.
  2. Verifica ruoli FSMO e Domain Controller aggiuntivi
    netdom query fsmo dcdiag /e /test:sysvolcheck /test:advertising Essentials deve essere l’unico DC del dominio e detenere tutti e cinque i ruoli FSMO.
  3. Controlla lo stato di attivazione
    slmgr /dli # mostra il canale/licenza slmgr /ato # prova la riattivazione, se necessario
  4. Conta VM, replica e trust
    • In Hyper‑V Manager assicurati che esista una sola istanza attiva di Essentials (o solo fisico).
    • Verifica ed elimina trust non consentite con netdom trust.

Analisi approfondita per ogni categoria

Active Directory e ruoli FSMO

L’edizione Essentials è progettata per realtà semplici: un singolo controller di dominio, senza trust esterne, e con tutti i ruoli FSMO concentrati sullo stesso server. Qualsiasi deviazione può attivare silsvc.

  • Come verificare i DC presenti
    Import-Module ActiveDirectory Get-ADDomainController -Filter * | Select-Object HostName,Site,IsReadOnly Se vedi più di un DC (inclusi eventuali Read‑Only DC), sei fuori conformità.
  • Come trasferire i ruoli FSMO
    # Sostituisci CONTOSO-DC con il nome del server Essentials Move-ADDirectoryServerOperationMasterRole -Identity "CONTOSO-DC" ` -OperationMasterRole SchemaMaster,DomainNamingMaster,PDCEmulator,RIDMaster,InfrastructureMaster Conferma con netdom query fsmo che tutti i ruoli siano ora su Essentials.
  • Come rimuovere trust
    # Elenca eventuali trust Get-ADTrust -Filter * | Format-Table Name,Direction,ForestTransitive Esempio di rimozione (da eseguire con cautela) netdom trust contoso.local /d:partner.local /remove Le trust bidirezionali o di foresta violano i vincoli dell’edizione.

Virtualizzazione e istanze duplicate

Essentials richiede che sia attiva una sola istanza del sistema operativo (fisica oppure virtuale). Copie di VM avviate per test, repliche Hyper‑V lasciate accese o migrazioni incomplete possono far scattare l’arresto.

  • Controllo rapido su Hyper‑V
    Get-VM | Where-Object {$_.State -eq 'Running'} | Select-Object Name,State,ComputerName Verifica che non esistano cloni della VM Essentials in esecuzione su host diversi.
  • Replica Hyper‑V
    La Replica non è un problema se la VM di destinazione resta spenta. Una accensione non pianificata può però causare la segnalazione di duplicato.

Limiti utenti e dispositivi

Essentials pone un tetto di 25 utenti e 50 dispositivi. Quando l’organizzazione cresce oltre tali numeri, il servizio di licenza segnala la violazione.

  • Conteggio indicativo
    # Utenti abilitati (esclude i built-in più comuni) Get-ADUser -Filter {Enabled -eq $true -and ObjectClass -eq 'user'} ` -SearchBase (Get-ADDomain).DistinguishedName | Measure-Object Dispositivi di tipo "computer" (client joinati al dominio) Get-ADComputer -Filter * -SearchBase (Get-ADDomain).DistinguishedName | Measure-Object Rivedi periodicamente account obsoleti o duplicati e disabilita/elimini quelli non più necessari.

Licenza e attivazione

Stati di attivazione inconsistenti (ad esempio dopo sostituzione hardware o restore) possono far fallire la convalida. Utilizza gli strumenti standard:

slmgr /dlv   # dettagli approfonditi
slmgr /dli   # riepilogo stato
slmgr /ato   # attivazione online
slmgr /upk   # rimuove la product key (con cautela)
slmgr /ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX  # reimmissione key

In caso di versioni di valutazione scadute, occorre inserire una chiave valida dell’edizione corretta.

Come distinguere il problema da altri spegnimenti

  • Eventi 6008/6009 (spegnimento inatteso) tipici di blackout o crash non compaiono nel caso di silsvc.
  • L’Evento 1074 indica sempre chi ha provocato l’arresto: se è silsvc.exe con utente NT AUTHORITY\SYSTEM, la causa è la conformità licenze.
  • Verifica l’assenza di attività pianificate che chiamino shutdown.exe: schtasks /query /fo LIST /v | findstr /I /C:"shutdown" /C:"Stop-Computer"

Soluzioni pratiche e ordinate

PassoAzione consigliata
Rientrare nei limitiDemoti eventuali DC aggiuntivi; trasferisci tutti i ruoli FSMO a Essentials; rimuovi trust; riduci a una sola istanza attiva.
Rieseguire la verificaRiavvia il servizio Server Infrastructure Licensing oppure esegui silsvc /schedule per forzare un nuovo controllo.
Aggiornare la licenza se necessarioSe hai bisogno di più DC, trust o più istanze, pianifica la migrazione a Windows Server Standard (con le CAL adeguate).
Patch e manutenzioneApplica l’ultima Cumulative Update; in passato alcuni aggiornamenti hanno corretto falsi positivi del componente di licenza.

Playbook operativo passo per passo

  1. Leggi gli eventi 100–102 nel canale Server Infrastructure Licensing e identifica la regola violata.
  2. Correggi la configurazione in base alla categoria:
    • DC multipli: avvia la procedura di demotion del DC non Essentials con Uninstall-ADDSDomainController (da Server Manager o PowerShell).
    • FSMO non su Essentials: sposta tutti i ruoli con Move-ADDirectoryServerOperationMasterRole.
    • Trust: elimina le relazioni non previste con netdom trust o Get-ADTrust/Remove-ADTrust.
    • VM duplicate: spegni i cloni, disabilita avvii automatici e rivedi la replica Hyper‑V.
    • Limiti utenti/device: archivia o elimina account obsoleti; valuta upgrade di edizione se l’organico è stabilmente superiore ai limiti.
    • Attivazione: riesegui slmgr /ato o reimmetti la product key corretta.
  3. Forza un nuovo ciclo di verifica: Get-Service -Name silsvc | Restart-Service -Force in alternativa, se supportato silsvc /schedule
  4. Monitora i log per almeno un ciclo: l’assenza di nuovi 100‑102 e di un 1074 nello stesso intervallo orario conferma la risoluzione.

Strategie di migrazione quando Essentials non basta

Se l’infrastruttura richiede più controller di dominio, relazioni di trust o numeri superiori di utenti/device, Essentials non è più adatto. La soluzione è migrare a Windows Server Standard.

  • Percorso consigliato: prepara un nuovo server con Windows Server Standard, senza promuoverlo a DC finché non hai pianificato la transizione. Durante la migrazione, evita finestre prolungate in cui coesistono due DC per non incorrere nel blocco di Essentials.
  • Servizi dipendenti: valuta in anticipo DNS, DHCP, file services, criteri di gruppo e ruoli applicativi; migra o replica i dati e le condivisioni.
  • Licensing: prevedi le Client Access Licenses (CAL) necessarie per utenti e dispositivi.

Riduzione del rischio durante la correzione

  • Pianifica fuori orario: il ciclo di controllo avviene circa una volta a settimana; coordina i cambiamenti prima della consueta finestra di spegnimento.
  • Backup verificati: prima di demotare un DC o modificare ruoli FSMO, assicurati di avere backup di sistema e di stato di Active Directory.
  • Monitoraggio: imposta un alert sugli eventi 100‑102 per reagire in anticipo alle anomalie.

Domande frequenti

Posso disabilitare il servizio silsvc per evitare lo spegnimento? No. Disabilitare o manomettere il servizio aggira temporaneamente il sintomo ma viola i termini di licenza e non risolve la causa. È espressamente sconsigliato.

<dt>Perché lo spegnimento è quasi sempre il lunedì mattina?</dt>
<dd>Perché il controllo è ciclico (circa settimanale) e molte installazioni sono state avviate o aggiornate a inizio settimana. Il <em>timing</em> ricade quindi sul lunedì a quell’ora.</dd>

<dt>Una VM replica spenta conta come seconda istanza?</dt>
<dd>No, se resta spenta non è considerata istanza attiva. Ma qualsiasi accensione accidentale può far scattare la segnalazione.</dd>

<dt>Come verifico rapidamente chi ha chiesto lo spegnimento?</dt>
<dd>Apri <em>Event Viewer → System</em> e cerca l’evento <strong>1074</strong>: indica il processo (<code>silsvc.exe</code>) e l’utente (<em>NT AUTHORITY\SYSTEM</em>).</dd>

Esempi pratici e correzioni

Secondo DC temporaneo lasciato online

Durante una migrazione è stato introdotto un secondo DC “temporaneo” e poi dimenticato. Soluzione: demotarlo con Uninstall‑ADDSDomainController, trasferire FSMO a Essentials, riavviare silsvc.

VM di test accesa nel laboratorio

Un clone della VM Essentials, pensato per prova, è rimasto acceso in un host di laboratorio. Soluzione: spegnere ed eliminare il clone, rimuovere la VM dall’inventario, ripulire eventuali duplicati DNS/AD, forzare il controllo.

Superamento soglia dispositivi

Nuovi laptop aziendali hanno portato i computer account oltre 50. Soluzione: disattiva/elimina i client dismessi; se l’organico resta sopra la soglia, migra a edizione Standard.

Attivazione perduta dopo sostituzione motherboard

Il cambio hardware ha invalidato l’attivazione. Soluzione: riesegui slmgr /ato o reimmetti la key corretta; verifica l’esito con slmgr /dlv, poi riavvia silsvc.

Checklist finale

  • Eventi 100‑102 letti e documentati dal canale Server Infrastructure Licensing.
  • Confermata l’unicità del DC e la piena titolarità dei ruoli FSMO su Essentials.
  • Assenza di trust con altri domini/foreste.
  • Una sola istanza di Essentials in esecuzione (fisica o virtuale).
  • Utenti ≤ 25 e dispositivi ≤ 50 oppure piano di migrazione a Standard.
  • Licenza attivata e aggiornata; patch installate.
  • Servizio silsvc riavviato e monitoraggio impostato.

Buone pratiche a regime

  • Documentazione puntuale di utenti, dispositivi e VM per predisporre audit e revisioni periodiche.
  • Controllo regolare del canale eventi Server Infrastructure Licensing per cogliere tempestivamente le anomalie.
  • Gestione del ciclo di vita di account e client: dismissione ordinata riduce il rischio di superare le soglie.
  • Politiche di replica/test: usa reti isolate e impedisci l’avvio automatico di cloni.
  • Niente scorciatoie: non disattivare silsvc; non è una soluzione e può esporre a non conformità contrattuale.

Comandi utili riuniti

# Log silsvc
Get-WinEvent -LogName 'Microsoft-Windows-ServerInfrastructureLicensing/Operational' `
  -MaxEvents 50 | Select-Object TimeCreated, Id, LevelDisplayName, Message | Format-List

Chi ha avviato lo shutdown

Get-WinEvent -FilterHashtable @{LogName='System'; Id=1074} | `
Select-Object TimeCreated, ProviderName, Id, Message | Format-List

DC presenti

Import-Module ActiveDirectory
Get-ADDomainController -Filter * | Select-Object HostName,Site,IsReadOnly

Ruoli FSMO

netdom query fsmo

DCDiag essenziale

dcdiag /e /test:sysvolcheck /test:advertising

Trust

Get-ADTrust -Filter * | Format-Table Name,Direction,IntraForest,SelectiveAuth

Conteggi utenti e device

(Get-ADUser -Filter {Enabled -eq $true}).Count
(Get-ADComputer -Filter *).Count

VM attive su Hyper-V

Get-VM | Where-Object {$_.State -eq 'Running'} | Select-Object Name,ComputerName

Attivazione

slmgr /dli
slmgr /ato

Forzare un nuovo controllo licenza

Get-Service silsvc | Restart-Service -Force
silsvc /schedule   # se supportato

Sintesi operativa

Il riavvio settimanale del tuo HP con Windows Server 2019 Essentials non è un guasto hardware né un’attività pianificata: è il Licensing Compliance Service che spegne il server quando la configurazione non rispetta i vincoli dell’edizione (unico DC, tutti i ruoli FSMO, nessuna trust, una sola istanza attiva, massimo 25 utenti e 50 dispositivi, licenza valida). Identifica l’ID evento specifico nel canale Server Infrastructure Licensing, adegua la topologia o valuta il passaggio a Windows Server Standard. Una volta rientrato in conformità, lo spegnimento programmato cessa automaticamente.

Indice