Aggiornamento in‑place da Windows Server 2012 a 2016: come abilitare «Mantieni file personali e programmi»

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.

Indice

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.

MotivoSpiegazione
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 soddisfattiLingua 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 mismatchLo 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 EvaluationUn 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.

  1. Edizione identica: Standard → Standard, Datacenter → Datacenter; Core → Core, Desktop Experience → Desktop Experience.
  2. 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.
  3. Patch e SSU: il 2012 deve essere completamente aggiornato, incluso l’ultimo Servicing Stack Update disponibile per 2012.
  4. Spazio libero: almeno 20 GB sulla partizione di sistema (C:). Consigliati 30–40 GB su server con molti ruoli.
  5. Ruoli/feature sensibili: valutare la rimozione temporanea di WSUS, WDS, componenti FSRM legacy e driver/agent di sicurezza con filtri kernel. Reinstallarli dopo.
  6. NIC Teaming: disabilitare temporaneamente LBFO (Get-NetLbfoTeam per verificare). Riabilitarlo a upgrade completato.
  7. Antivirus e cifratura: disattivare AV di terze parti; sospendere BitLocker sul volume di sistema.
  8. Backup: immagine completa più snapshot/clone se VM. Verifica ripristino.
  9. Integrità file di sistema: pianificare DISM e SFC (vedi sezione successiva).
  10. 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.

  1. Montare l’ISO di Windows Server 2016 che corrisponde a edizione e lingua dell’installazione corrente.
  2. Aprire un prompt elevato ed eseguire: DISM /online /Cleanup-Image /RestoreHealth SFC /Scannow per garantire l’integrità dell’immagine.
  3. Eseguire setup.exe dall’ISO montata. Se disponibili, abilita Dynamic Update per scaricare driver e aggiornamenti compatibilità.
  4. Selezionare l’opzione «Mantieni file personali e programmi». Se ora è selezionabile, i prerequisiti sono soddisfatti.
  5. Completare l’upgrade e, al termine, applicare gli ultimi aggiornamenti cumulativi per Windows Server 2016.
  6. 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:

  1. Prepara un nuovo server Windows Server Retail (2012/2016) nella stessa rete.
  2. Promuovilo a DC aggiuntivo nel dominio esistente.
  3. Trasferisci i ruoli FSMO al nuovo DC e verifica la replica (dcdiag /e /v, repadmin /replsummary).
  4. Rimuovi/demoti il DC Evaluation e dismettilo.
  5. 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

OpzioneProContro
Installazione pulitaMassima 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 ruoliMove 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 → 2016A 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 e repadmin /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

  1. Conferma che l’ISO non sia Evaluation e che combaci con edizione, lingua e install‑mode.
  2. Aggiorna completamente Windows Server 2012, inclusi SSU; riavvia.
  3. Sospendi BitLocker, disattiva AV/EDR, disabilita NIC Teaming.
  4. Esegui DISM e SFC; libera spazio su C: (≥20 GB).
  5. Disinstalla temporaneamente ruoli/feature sensibili (WSUS, WDS) e driver filtro problematici.
  6. Se l’OS è Evaluation, converti a Retail con DISM /Set-Edition. Se è un DC Evaluation, aggiungi un DC Retail e trasferisci i ruoli.
  7. Esegui setup.exe dall’OS in esecuzione e seleziona «Mantieni file personali e programmi».
  8. Concludi con aggiornamenti post‑installazione, reinstallazione dei ruoli rimossi e verifiche di servizio.

Sequenze operative consigliate per casi ricorrenti

File server generico

  1. Backup completo e snapshot VM.
  2. Rimuovi temporaneamente agent di sicurezza con filtri kernel.
  3. DISM/SFC, pulizia componenti e spazio libero.
  4. Upgrade con ISO corrispondente e Dynamic Update abilitato.
  5. Verifica condivisioni, ACL e quote FSRM; reinstalla eventuali componenti FSRM legacy.

WSUS host

  1. Esporta configurazione e DB se necessario.
  2. Disinstalla WSUS e prerequisiti DB.
  3. Esegui upgrade in‑place.
  4. Reinstalla WSUS, esegui post‑installazione e pulizia.

Domain Controller Retail

  1. Controlli dcdiag e repadmin.
  2. Backup stato del sistema.
  3. Upgrade in‑place; post‑upgrade verifica SYSVOL, DNS e replica.

Domain Controller Evaluation

  1. Introduci un DC Retail aggiuntivo.
  2. Trasferisci FSMO, verifica replica.
  3. Demoti e rimuovi il DC Evaluation.
  4. 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 con Cleanmgr o DISM /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

OrigineDestinazioneIn‑place possibileNote
2012 Standard Desktop2016 Standard DesktopStessa lingua e canale; patch e SSU aggiornati.
2012 Standard Core2016 Standard CoreNon passare a Desktop Experience.
2012 Datacenter Desktop2016 Datacenter DesktopAttenzione a driver/storage avanzati.
2012 Standard2016 DatacenterNoConverti edizione prima, oppure installazione pulita.
2012 Datacenter2016 StandardNoDown‑edizione non supportata in‑place.
2012 qualsiasi2016 EvaluationNoI supporti Evaluation non mantengono app/dati.
2012 lingua IT‑IT2016 lingua EN‑USNoRichiesta lingua identica di base.
2012 DC Evaluation2016 qualsiasiNoIntrodurre 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.

Indice