Quando avvii Setup.exe dal supporto di Windows Server 2016 e l’opzione «Mantieni file personali e programmi» è disabilitata, significa che un prerequisito blocca l’aggiornamento in‑place. Questa guida spiega cause, verifiche e procedure risolutive passo‑passo.
Scenario e sintomi
Su un server con Windows Server 2012 si intende eseguire un upgrade in‑place a Windows Server 2016 montando l’ISO e lanciando setup.exe
dall’OS in esecuzione. La procedura parte, ma nella schermata “Scegli cosa tenere” la voce «Mantieni file personali e programmi» risulta grigia e non selezionabile. In questo stato, l’unica via proposta è l’installazione pulita, con perdita di applicazioni e configurazioni.
Perché l’opzione è disattivata
Nella maggior parte dei casi il blocco non è dovuto a un problema del setup, bensì a un mismatch tra ciò che è installato e ciò che si tenta di installare. Di seguito le cause più frequenti e come riconoscerle.
Motivo | Spiegazione |
---|---|
ISO di valutazione (Evaluation) | L’aggiornamento verso una build Evaluation non è supportato: i supporti di valutazione consentono solo installazioni “da zero”. Se esegui Setup da un ISO Evaluation, l’opzione per mantenere file e app viene disabilitata. |
Prerequisiti di Feature Update non soddisfatti | Lingua diversa, architettura non allineata (2016 è solo 64‑bit), edizione non corrispondente, spazio disco insufficiente, ruoli o driver incompatibili, pacchetti lingua aggiuntivi, aggiornamenti di manutenzione mancanti: basta uno solo di questi elementi per forzare la modalità installazione pulita. |
Edition / install‑mode mismatch | Lo switch tra Core e Desktop Experience non è consentito in upgrade. Anche Standard ↔ Datacenter non è ammesso durante l’aggiornamento in‑place: l’edizione deve corrispondere. |
Controller di dominio in Evaluation | Un Domain Controller installato in edizione Evaluation non può essere convertito direttamente a Retail né aggiornato in‑place: occorre introdurre un DC Retail, trasferire i ruoli FSMO e rimuovere il DC Evaluation prima dell’upgrade. |
Verifiche preliminari essenziali
Prima di riprovare l’upgrade, esegui questa checklist. Ogni punto risolve una classe di blocchi che porta al pulsante “Mantieni” disabilitato.
- Edizione identica: Standard → Standard, Datacenter → Datacenter; Core → Core, Desktop Experience → Desktop Experience.
- Lingua e architettura: devono coincidere con il supporto. Windows Server 2016 è solo x64, quindi 2012 deve essere x64 e l’ISO deve avere la stessa lingua base dell’OS.
- Patch e SSU: il 2012 deve essere completamente aggiornato, incluso l’ultimo Servicing Stack Update disponibile per 2012.
- Spazio libero: almeno 20 GB sulla partizione di sistema (C:). Consigliati 30–40 GB su server con molti ruoli.
- Ruoli/feature sensibili: valutare la rimozione temporanea di WSUS, WDS, componenti FSRM legacy e driver/agent di sicurezza con filtri kernel. Reinstallarli dopo.
- NIC Teaming: disabilitare temporaneamente LBFO (
Get-NetLbfoTeam
per verificare). Riabilitarlo a upgrade completato. - Antivirus e cifratura: disattivare AV di terze parti; sospendere BitLocker sul volume di sistema.
- Backup: immagine completa più snapshot/clone se VM. Verifica ripristino.
- Integrità file di sistema: pianificare
DISM
eSFC
(vedi sezione successiva). - Avvio del setup: l’upgrade in‑place richiede di eseguire
setup.exe
dall’OS, non da boot.
Comandi utili per le verifiche
Esegui da prompt elevato (PowerShell o CMD) per identificare rapidamente edizione, lingua, driver e spazio.
:: Edizione corrente ed edizioni destinazione compatibili
dism /online /Get-CurrentEdition
dism /online /Get-TargetEditions
:: Lingua base e language pack installati
dism /online /Get-Intl
:: Spazio su C:
fsutil volume diskfree C:
:: Ruoli installati
powershell -NoProfile -Command "Get-WindowsFeature | ? {$_.InstallState -eq 'Installed'} | Sort DisplayName | ft -a"
:: Driver filtro potenzialmente bloccanti
fltmc filters
:: Stato BitLocker
manage-bde -status
Preparazione consigliata prima di lanciare Setup
Una preparazione accurata riduce drasticamente errori e rollback.
Pulizia e riparazione componenti
DISM /online /Cleanup-Image /RestoreHealth
SFC /Scannow
DISM /online /Cleanup-Image /StartComponentCleanup
Questi comandi riparano l’archivio componenti e i file di sistema, togliendo di mezzo cause banali di blocchi compatibilità.
Allineamento lingua e pacchetti
- Usa un ISO con la stessa lingua base dell’installazione.
- Se presenti Language Pack aggiunti dopo, rimuovili temporaneamente lasciando solo la lingua base.
Ruoli e agent particolari
- WSUS: disinstalla i componenti Update Services e i prerequisiti database. Dopo l’upgrade, reinstalla e riesegui la configurazione.
- WDS: rimuovilo e ripristinalo post‑upgrade.
- Antivirus e EDR: disattiva o disinstalla temporaneamente prodotti che caricano filtri (
fltmc
ti aiuta a individuarli). - Cluster/Hyper‑V: evita l’in‑place su nodi di cluster 2012; pianifica migrazione o ricostruzione (rolling upgrade nativo è disponibile solo da 2012 R2 a 2016).
Percorso operativo con ISO Retail o Volume
Se tutte le verifiche sono a posto, la procedura in‑place conservenza file e app è lineare.
- Montare l’ISO di Windows Server 2016 che corrisponde a edizione e lingua dell’installazione corrente.
- Aprire un prompt elevato ed eseguire:
DISM /online /Cleanup-Image /RestoreHealth SFC /Scannow
per garantire l’integrità dell’immagine. - Eseguire
setup.exe
dall’ISO montata. Se disponibili, abilita Dynamic Update per scaricare driver e aggiornamenti compatibilità. - Selezionare l’opzione «Mantieni file personali e programmi». Se ora è selezionabile, i prerequisiti sono soddisfatti.
- Completare l’upgrade e, al termine, applicare gli ultimi aggiornamenti cumulativi per Windows Server 2016.
- Ripristinare ruoli e componenti rimossi (WSUS, WDS, ecc.), riabilitare NIC Teaming e antivirus, verificare servizi applicativi.
Server installato in Evaluation
Se l’installazione 2012 è un’edizione Evaluation, non è possibile aggiornare direttamente a 2016 né mantenere file e app. Occorre prima convertire a Retail.
Conversione a Retail su server non DC
Esegui da prompt elevato (sostituisci con la tua edizione e il tuo product key):
DISM /online /Set-Edition:ServerStandard /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula
:: oppure
DISM /online /Set-Edition:ServerDatacenter /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula
Riavvia quando richiesto. Dopo la conversione a Retail, ripeti l’upgrade a 2016 come descritto sopra.
Se il server Evaluation è un Domain Controller
La conversione in‑place non è supportata sui DC Evaluation. Procedura raccomandata:
- Prepara un nuovo server Windows Server Retail (2012/2016) nella stessa rete.
- Promuovilo a DC aggiuntivo nel dominio esistente.
- Trasferisci i ruoli FSMO al nuovo DC e verifica la replica (
dcdiag /e /v
,repadmin /replsummary
). - Rimuovi/demoti il DC Evaluation e dismettilo.
- Esegui l’upgrade del nuovo DC (se necessario) oppure aggiungi direttamente un DC 2016 e rimuovi i DC più vecchi.
Alternative quando l’upgrade in‑place non è percorribile
Opzione | Pro | Contro |
---|---|---|
Installazione pulita | Massima affidabilità e pulizia; ideale su nuovo hardware/VM; ottima per ambienti molto personalizzati o “incrostati”. | Richiede migrazione dati e riconfigurazione ruoli/applicazioni; downtime da pianificare. |
Migrazione per ruoli | Move selettivo di servizi (AD, DHCP, File Server, IIS, WSUS, ecc.); possibilità di test paralleli e rollback semplice. | Richiede competenze specifiche e orchestrazione; tempi variabili secondo i ruoli. |
Upgrade intermedio 2012 → 2012 R2 → 2016 | A volte aggira driver/app legacy o blocchi di compatibilità peculiari. | Generalmente non necessario poiché 2012 → 2016 è supportato; allunga tempi e complessità. |
Troubleshooting quando «Mantieni file personali e programmi» resta grigia
Se, nonostante la preparazione, l’opzione rimane disabilitata, passa all’analisi dei log di Setup. Qui si scopre quasi sempre la causa precisa.
Dove leggere i log
%SystemDrive%\$WINDOWS.~BT\Sources\Panther\
–setupact.log
,setuperr.log
,CompatData_*.xml
C:\Windows\Panther\
– log aggiuntivi di fase pre‑setup%SystemDrive%\$WINDOWS.~BT\Sources\Rollback\
– log di rollback se l’upgrade è fallito dopo il riavvio
Come interpretare i log
- Hard Block vs Soft Block: nei file
CompatData_*.xml
cerca voci con BlockingType. Gli Hard Block disabilitano la conservazione di app e dati. - Edition mismatch: stringhe che indicano differenze tra Target Edition e Current Edition (es. Datacenter↔Standard).
- Language mismatch: voci relative a UILanguage o SystemLocale differenti dal supporto.
- Driver e filtri: riferimenti a driver di terze parti (av, edr, storage*) caricati in kernel mode. Disinstallali temporaneamente.
Correzioni rapide tipiche
- Allinea l’edizione: se 2012 è Standard e l’ISO è Datacenter (o viceversa), procurati il supporto corretto oppure converti l’edizione prima sull’OS di origine.
- Allinea la lingua: usa un ISO con la stessa lingua base (
dism /online /Get-Intl
ti mostra Default system UI language). - Rimuovi pacchetti lingua aggiuntivi; reinstalla dopo l’upgrade.
- Disinstalla ruoli bloccanti: WSUS/WDS e componenti legacy; poi ripristinali.
- Disattiva BitLocker (sospensione) e AV/EDR; riabilitali a fine upgrade.
- Libera spazio: sposta temporaneamente file su altro volume o estendi C:.
Best practice specifiche per ruoli comuni
Active Directory Domain Services
- Verifica salute del dominio prima:
dcdiag /e /v
erepadmin /replsummary
. - Esegui il setup da OS; l’aggiornamento gestisce automaticamente gli step di schema e servizio directory quando necessario.
- Se il DC è Evaluation, usa la procedura con DC aggiuntivo Retail e trasferimento FSMO come descritto.
DHCP Server
- Esporta la configurazione prima dell’upgrade:
Export-DhcpServer -ComputerName localhost -File C:\backup\dhcp.xml -Leases -Force
Dopo l’upgrade, reimporta:Import-DhcpServer -ComputerName localhost -File C:\backup\dhcp.xml -BackupPath C:\backup -Leases -Force
File Server
- Esegui un inventario share/NTFS e valuta l’uso di
Robocopy
per migrazioni o rollback:robocopy D:\Condivisione \\NuovoServer\Condivisione /MIR /COPY:DATSO /R:1 /W:1 /MT:16 /LOG:C:\robocopy.log
IIS Web Server
- Esporta configurazione:
%windir%\system32\inetsrv\appcmd list site /config /xml > C:\backup\sites.xml
oppure usa Web Deploy per backup e restore.
WSUS
- La rimozione temporanea prima dell’upgrade riduce rischi; dopo l’upgrade, riesegui la post‑installazione e la pulizia del DB.
Domande frequenti
Posso passare da Standard a Datacenter durante l’upgrade?
No. L’upgrade in‑place richiede stessa edizione. Se serve Datacenter, convertilo prima sul sistema di origine o pianifica installazione pulita.
Posso passare da Core a Desktop Experience (o viceversa)?
No. L’opzione d’installazione deve restare invariata.
Devo per forza passare da 2012 a 2012 R2 e poi a 2016?
No. L’upgrade diretto 2012 → 2016 è supportato. Il doppio salto è raro e serve solo per aggirare specifiche incompatibilità.
Dove vedo perché il setup non mi fa mantenere file e programmi?
Nei log di Panther e CompatData, come descritto in precedenza. Cerca voci HardBlock o messaggi di mismatch lingua/edizione.
Che supporto devo usare?
Un’ISO Retail o Volume con stessa lingua, stessa edizione e stessa install‑mode della macchina di partenza.
Checklist esecutiva rapida
- Conferma che l’ISO non sia Evaluation e che combaci con edizione, lingua e install‑mode.
- Aggiorna completamente Windows Server 2012, inclusi SSU; riavvia.
- Sospendi BitLocker, disattiva AV/EDR, disabilita NIC Teaming.
- Esegui
DISM
eSFC
; libera spazio su C: (≥20 GB). - Disinstalla temporaneamente ruoli/feature sensibili (WSUS, WDS) e driver filtro problematici.
- Se l’OS è Evaluation, converti a Retail con
DISM /Set-Edition
. Se è un DC Evaluation, aggiungi un DC Retail e trasferisci i ruoli. - Esegui
setup.exe
dall’OS in esecuzione e seleziona «Mantieni file personali e programmi». - Concludi con aggiornamenti post‑installazione, reinstallazione dei ruoli rimossi e verifiche di servizio.
Sequenze operative consigliate per casi ricorrenti
File server generico
- Backup completo e snapshot VM.
- Rimuovi temporaneamente agent di sicurezza con filtri kernel.
- DISM/SFC, pulizia componenti e spazio libero.
- Upgrade con ISO corrispondente e Dynamic Update abilitato.
- Verifica condivisioni, ACL e quote FSRM; reinstalla eventuali componenti FSRM legacy.
WSUS host
- Esporta configurazione e DB se necessario.
- Disinstalla WSUS e prerequisiti DB.
- Esegui upgrade in‑place.
- Reinstalla WSUS, esegui post‑installazione e pulizia.
Domain Controller Retail
- Controlli
dcdiag
erepadmin
. - Backup stato del sistema.
- Upgrade in‑place; post‑upgrade verifica SYSVOL, DNS e replica.
Domain Controller Evaluation
- Introduci un DC Retail aggiuntivo.
- Trasferisci FSMO, verifica replica.
- Demoti e rimuovi il DC Evaluation.
- Completa l’upgrade o mantieni direttamente un DC 2016.
Verifica post‑upgrade
- Windows Update: applica le ultime CU e riavvia.
- Driver/VM tools: aggiorna driver storage/rete; su VMware aggiorna VMware Tools; su Hyper‑V verifica l’integrazione (da 2016 è integrata via Windows Update).
- Servizi: controlla Event Viewer per errori critici nelle prime 48 ore.
- BitLocker, AV e Teaming: riattiva e valida le funzionalità.
- Licensing: attiva il prodotto (KMS/MAK) e verifica
slmgr /dlv
. - Pulizia: valuta la rimozione di
C:\Windows.old
e componenti obsoleti conCleanmgr
oDISM /StartComponentCleanup
. - Backup: esegui una nuova immagine del sistema post‑upgrade.
Riepilogo strategico
Quando l’opzione per mantenere file e programmi è grigia, il motivo è quasi sempre un mismatch (edizione, lingua, install‑mode) o un prerequisito mancante. Usando un supporto Retail/Volume perfettamente allineato, garantendo integrità dell’immagine (DISM/SFC), disattivando temporaneamente componenti invasivi (BitLocker, AV, Teaming) e rimuovendo ruoli sensibili, l’upgrade in‑place da Windows Server 2012 a Windows Server 2016 risulta affidabile e ripetibile. Se l’origine è Evaluation, converti a Retail prima (o, se DC, adotta la strategia con DC aggiuntivo). In ultima istanza, la migrazione per ruoli o l’installazione pulita restano alternative solide.
Appendice di riferimento rapido
Tabella di compatibilità a colpo d’occhio
Origine | Destinazione | In‑place possibile | Note |
---|---|---|---|
2012 Standard Desktop | 2016 Standard Desktop | Sì | Stessa lingua e canale; patch e SSU aggiornati. |
2012 Standard Core | 2016 Standard Core | Sì | Non passare a Desktop Experience. |
2012 Datacenter Desktop | 2016 Datacenter Desktop | Sì | Attenzione a driver/storage avanzati. |
2012 Standard | 2016 Datacenter | No | Converti edizione prima, oppure installazione pulita. |
2012 Datacenter | 2016 Standard | No | Down‑edizione non supportata in‑place. |
2012 qualsiasi | 2016 Evaluation | No | I supporti Evaluation non mantengono app/dati. |
2012 lingua IT‑IT | 2016 lingua EN‑US | No | Richiesta lingua identica di base. |
2012 DC Evaluation | 2016 qualsiasi | No | Introdurre DC Retail, trasferire FSMO, rimuovere Evaluation. |
Sequenza comandi minima prima di Setup
:: Verifica edizione/lingua/spazio
dism /online /Get-CurrentEdition
dism /online /Get-Intl
fsutil volume diskfree C:
:: Ripara e pulisci
DISM /online /Cleanup-Image /RestoreHealth
SFC /Scannow
DISM /online /Cleanup-Image /StartComponentCleanup
:: Disabilita elementi potenzialmente bloccanti (esempi)
powershell -Command "Get-NetLbfoTeam | Disable-NetLbfoTeam -Confirm:$false"
manage-bde -protectors -disable C:
Promemoria per ambienti virtuali
- Assicurati che l’hypervisor sia supportato per 2016 e che l’HAL/driver paravirtualizzati siano aggiornati.
- Con Hyper‑V Replica o cluster 2012, valuta migrazione laterale anziché in‑place.
- Con snapshot, pianifica e documenta la policy di retention per evitare crescita eccessiva dei dischi differenziali.
Conclusioni
Seguendo le pratiche descritte — supporto Retail/Volume corretto, prerequisiti soddisfatti, conversione da Evaluation quando serve e attenzione ai ruoli sensibili — l’aggiornamento in‑place da Windows Server 2012 a Windows Server 2016 può essere eseguito con sicurezza, mantenendo dati e applicazioni. In caso di blocchi persistenti, l’analisi dei log Panther rivelerà la causa esatta, permettendo di agire in modo mirato senza improvvisazioni.