Se dfsrMig /getmigrationstate
riporta “Global state (Start)” e nei Domain Controller vedi solo la condivisione SYSVOL (senza cartella SYSVOL_DFSR), la migrazione non è mai partita. Qui trovi una guida operativa, chiara e sicura, per passare da FRS a DFSR senza interruzioni dei criteri di gruppo.
Sintomi e diagnosi rapida
dfsrMig /getmigrationstate
restituisce: “All domain controllers have migrated successfully to the Global state (Start)”.- È visibile soltanto la condivisione
SYSVOL
; la cartellaSYSVOL_DFSR
non esiste. - Sui DC risultano in esecuzione sia File Replication Service (FRS) sia DFS Replication (DFSR).
Questi indizi indicano che non è stato avviato alcun passaggio: Start (valore 0) è lo stato iniziale predefinito di tutti i domini che usano ancora FRS per replicare SYSVOL.
Perché migrare: FRS vs DFSR, vantaggi concreti
FRS è obsoleto: non è più supportato per nuove promozioni di DC nelle versioni recenti di Windows Server e, in ambienti misti, rappresenta una fonte di rischi e complessità. DFSR introduce un motore di replica più resiliente e scalabile, con compressione, gestione efficiente della larghezza di banda, ripresa delle copie e log diagnostici molto più ricchi. Migrare significa:
- Stabilità: minore probabilità di divergenze dei GPO tra siti.
- Performance: replica differenziale e compressa.
- Futuro: possibilità di aggiungere DC moderni (2019/2022/2025) senza blocchi di promozione.
Interpretazione degli stati DFSRMIG
Valore | Nome stato | Significato operativo |
---|---|---|
0 | Start | SYSVOL replicato da FRS (situazione attuale) |
1 | Prepared | Creata SYSVOL_DFSR e popolata via DFSR; FRS continua a servire GPO |
2 | Redirected | DFSR diventa l’origine condivisa di SYSVOL; FRS rimane copia di sicurezza |
3 | Eliminated | FRS disattivato; solo DFSR replica SYSVOL (irreversibile) |
Cosa accade dietro le quinte
- Start: i DC servono
\<dc>\SYSVOL
dalla path classicaC:\Windows\SYSVOL\domain
. Il servizio DFSR può essere avviato, ma non gestisce SYSVOL. - Prepared: viene creata
C:\Windows\SYSVOL_DFSR\domain
e sincronizzata in background tramite DFSR, ma la condivisione effettiva resta quella storica gestita da FRS. È la fase sicura per testare la salute DFSR. - Redirected: la condivisione
SYSVOL
punta fisicamente alla path inSYSVOL_DFSR
. FRS resta in piedi come rete di sicurezza. - Eliminated: FRS viene disabilitato e non parte più. L’unico motore di replica per SYSVOL è DFSR.
Prerequisiti e verifiche preliminari
- Requisiti di versione: tutti i DC devono eseguire Windows Server 2008 o superiore. Dalla generazione 2019 in poi non è consentito promuovere DC se il dominio usa ancora FRS.
- Livello funzionale del dominio: almeno Windows Server 2008.
- Replica AD sana: nessun errore di replica in
repadmin
o nei log. - FRS in salute: niente back-log o Journal Wrap; log eventi puliti.
- Backup: stato del sistema di tutti i DC e backup del contenuto dei GPO.
- Spazio: sufficiente per creare e sincronizzare la nuova cartella
SYSVOL_DFSR
. - Esclusioni antivirus: escludi
SYSVOL
,SYSVOL_DFSR
e le cartelleDFSRPrivate
dall’AV in tempo reale. - Ora/DNS: servizio
w32time
e DNS correttamente configurati.
Check rapidi (consigliato eseguirli tutti)
# Elenco DC e stato replica AD
Get-ADDomainController -Filter * | Select-Object HostName,Site,OperatingSystem
repadmin /replsummary
repadmin /showrepl * /csv > C:\Temp\showrepl.csv
Test di pubblicazione e SYSVOL
dcdiag /e /test:sysvolcheck /test:advertising
Stato servizi sui DC
Get-Service -Name DFSR, NtFrs
Backlog DFSR per SYSVOL (da un DC)
dfsrdiag backlog /rgname:"Domain System Volume" /rfname:"SYSVOL Share" /sendingmember: /receivingmember:
Condivisioni effettive
net share
Procedura operativa guidata
La migrazione va eseguita una fase alla volta, procedendo alla successiva solo quando tutti i DC hanno raggiunto lo stesso stato (convergenza). È normale che i log DFSR si popolino di eventi informativi durante i passaggi.
Impostazione degli stati
dfsrMig /setGlobalState 1 # Prepared
dfsrMig /getGlobalState
dfsrMig /getMigrationState # Attendere finché tutti i DC sono in "Prepared"
dfsrMig /setGlobalState 2 # Redirected
dfsrMig /getMigrationState # Attendere convergenza completa
dfsrMig /setGlobalState 3 # Eliminated (irreversibile)
dfsrMig /getMigrationState # Verificare stato finale </code></pre>
<p><strong>Suggerimento:</strong> per accelerare la propagazione degli stati via AD, esegui una sincronizzazione di directory tra i DC:</p>
<pre><code>repadmin /syncall /AdeP
</code></pre>
<h3>Monitoraggio e eventi attesi</h3>
<p>Dopo ogni passaggio, controlla il Visualizzatore eventi → <em>Applications and Services Logs</em> → <em>DFS Replication</em> su ciascun DC. In particolare:</p>
<ul>
<li><strong>Eventi 4602/4604</strong>: indicano che la replica SYSVOL è stata inizializzata e il DC sta servendo correttamente la condivisione (buon segno per avanzare di fase).</li>
<li><strong>Evento 4612</strong>: “inizializzato e in attesa della replica iniziale”. Se persiste, <em>non</em> c’è convergenza: controlla la connettività e i partner.</li>
<li><strong>Eventi 4012/2213</strong>: segnalano “contenuto stantio” o “dirty shutdown/content freshness”. Richiedono interventi di ripristino (vedi troubleshooting).</li>
</ul>
<h3>Controlli pratici dopo ogni fase</h3>
<ul>
<li>La condivisione <code>SYSVOL</code> continua a essere disponibile dal punto di vista dei client (<code>\\dominio.fqdn\SYSVOL</code>).</li>
<li>Da <strong>Redirected</strong> in avanti, <code>SYSVOL</code> punta a <code>...\SYSVOL_DFSR</code>:
<pre><code class="language-powershell"># dove punta la condivisione
Get-SmbShare -Name SYSVOL | Format-List Name,Path
oppure
net share SYSVOL
Il comando dfsrMig /getmigrationstate
mostra tutti i DC sincronizzati nello stesso stato.
Nessun errore critico di replica nei log DFSR/Directory Service/NTDS.
Verifiche aggiuntive in ogni stato
Stato | Cosa verificare | Azioni consigliate |
---|---|---|
Prepared | Esistenza di SYSVOL_DFSR e avvio della sincronizzazione | Controlla backlog DFSR e l’evento 4602; niente modifiche massicce ai GPO |
Redirected | SYSVOL mappato a SYSVOL_DFSR | Applica piccole modifiche ai GPO per testare la replica end-to-end |
Eliminated | Servizio FRS non attivo sui DC | Verifica che FRS sia disabilitato; mantieni monitoraggio per qualche giorno |
Troubleshooting mirato
“Bloccato” su Prepared o Redirected
- Esegui
repadmin /replsummary
e correggi eventuali errori di replica AD (un DC fuori sync può trattenere gli avanzamenti di stato). - Verifica backlog DFSR fra tutte le coppie critiche:
dfsrdiag backlog /rgname:"Domain System Volume" /rfname:"SYSVOL Share" /sendingmember:<DCA> /receivingmember:<DCB>
Backlog elevati e stabili indicano problemi di connettività, filtro antivirus o file bloccati. - Controlla eventi 4612/4614: se “in attesa di replica iniziale”, risolvi la comunicazione con il partner di replica.
- Escludi
SYSVOL
/SYSVOL_DFSR
dall’AV e verifica I/O su disco.
Evento 4012: “Offline troppo a lungo”
DFS Replication interrompe la replica se un membro resta disconnesso oltre MaxOfflineTimeInDays
(default 60). Tipiche soluzioni:
- Non autorevole (D2) del DC indietro (ricrea da un partner sano). Utile quando i dati locali non sono affidabili.
- Autorevole (D4) su un DC di riferimento (replica agli altri). Usalo se sei certo che il contenuto locale sia quello “giusto”.
Queste procedure richiedono modifiche in ADSI Edit (msDFSR-Enabled
, msDFSR-Options
) e attenzione ai dettagli; eseguirle seguendo un runbook collaudato. Dopo D2/D4, cerca gli eventi 4114 (replica SYSVOL disabilitata) e 4602/4604 (inizializzazione completata).
SYSVOL/NETLOGON non visibili su un nuovo DC
Su DC appena promossi con DFSR, l’assenza delle condivisioni spesso è dovuta a inizializzazione incompleta (4612/4614). Forza la lettura della configurazione con:
dfsrdiag PollAD
e verifica che il servizio DFSR sia avviato, la rete raggiungibile e DNS corretto. Non procedere alla fase successiva finché non appare l’evento 4604.
Eliminated raggiunto ma un DC rimane indietro
Se lo stato globale è “Eliminated” ma un DC mostra ancora “Preparing” o non espone SYSVOL, può essere stato escluso dalla propagazione dello stato. Riporta quel DC a salute:
- Correggi replica AD (
repadmin
). - Valuta un D2 non autorevole sul DC problematico.
- Riesegui
dfsrdiag PollAD
e monitora 4602/4604.
Best practice operative
- Una fase alla volta: imposta lo stato, verifica convergenza (
dfsrMig /getmigrationstate
), poi procedi. - Finestra di quiete sui GPO: durante il passaggio da Prepared a Redirected riduci le modifiche pesanti ai criteri.
- Documenta: annota orari, eventi e output chiave (utile in caso di rollback fra stati 2→1 o 1→0).
- Monitoraggio: oltre ai log DFSR, valuta un report periodico (dfsr health report) e alert su 4012/5002/5008.
- Evita reboot non necessari: il passaggio di stato non richiede riavvii dei DC.
Script di verifica rapida (facoltativo)
Questo frammento interroga tutti i DC e mostra lo stato di condivisione SYSVOL e il servizio DFSR. Eseguilo su un DC con RSAT/AD Module.
$dcs = Get-ADDomainController -Filter * | Select-Object -ExpandProperty HostName
$result = foreach($dc in $dcs){
$shares = (Invoke-Command -ComputerName $dc -ScriptBlock { net share } 2>$null) -join "`n"
$dfsr = (Invoke-Command -ComputerName $dc -ScriptBlock { (Get-Service DFSR).Status } 2>$null)
[pscustomobject]@{
DC = $dc
SYSVOL = if($shares -match 'SYSVOL'){'OK'}else{'Assente'}
NETLOGON = if($shares -match 'NETLOGON'){'OK'}else{'Assente'}
DFSR = $dfsr
}
}
$result | Format-Table -Auto
Domande frequenti
Posso tornare indietro? Fino a Redirected puoi tornare a Prepared o Start se necessario. Dopo Eliminated non è possibile tornare a FRS.
Quanto dura la migrazione? Dipende dalla topologia, link WAN e backlog iniziale. Procedi per fasi e monitora gli eventi: è l’unica misura affidabile.
È necessario disinstallare FRS? Nelle versioni moderne FRS non è presente; dove esiste ancora, lo stato Eliminated ne impedisce l’avvio. Non è essenziale “rimuoverlo”, è sufficiente che resti disabilitato.
RODC e siti remoti lenti? Pianifica più tempo di convergenza e controlli mirati sul backlog. Evita di avanzare di stato se un RODC è ancora in attesa (4612).
Rischi e mitigazioni
Rischio | Mitigazione |
---|---|
Replica parziale o DC inattivi durante la migrazione | Esegui la fase successiva solo dopo che tutti i DC riportano lo stesso stato con dfsrMig /getmigrationstate e log coerenti. |
Impossibilità di tornare indietro dallo stato 3 | Testa in laboratorio o su un DC non critico; assicurati di avere backup aggiornati prima di Eliminated. |
Interruzioni GPO | Limita modifiche ai GPO durante il passaggio da Prepared a Redirected; verifica subito l’applicazione su client campione. |
Procedura consigliata (riassunto esecutivo)
- Verifiche preliminari
- Tutti i DC ≥ Windows Server 2008; livello funzionale del dominio ≥ 2008.
- Replica AD sana (
repadmin
) e FRS senza errori. - Backup di stato del sistema e GPO esistenti.
- Esegui la migrazione per fasi
dfsrMig /setGlobalState 1 # Prepared dfsrMig /getMigrationState # attende convergenza dfsrMig /setGlobalState 2 # Redirected dfsrMig /getMigrationState dfsrMig /setGlobalState 3 # Eliminated dfsrMig /getMigrationState
- Controlli post-fase
- Eventi 4602/4604 indicano inizializzazione e servizio SYSVOL attivo.
- Dallo stato 2, la condivisione
SYSVOL
punta a...\SYSVOL_DFSR
. - Assenza di errori DFSR/4012; backlog a zero.
Note importanti sugli eventi
- 4602/4604: positivi — DFSR ha inizializzato/sta servendo SYSVOL.
- 4612: non significa “convergenza”, ma che il DC attende la replica iniziale. Se persiste, indaga i partner di replica.
- 4012: replica fermata per eccessivo periodo offline; valuta D2/D4.
Checklist finale e pulizia
dfsrMig /getmigrationstate
mostra tutti i DC allo stato Eliminated.- La condivisione
SYSVOL
mappaSYSVOL_DFSR
su ogni DC interessato. - Sui DC legacy, FRS è in stato Disabled:
sc query NtFrs sc qc NtFrs
- Documenta il cambio e aggiorna le procedure interne (promozione nuovi DC, ripristini, esclusioni AV).
Conclusione
Il dominio è fermo allo stato iniziale Start; non è stata avviata alcuna migrazione reale. Per passare in sicurezza da FRS a DFSR imposta in sequenza gli stati 1 → 2 → 3, avanzando solo dopo convergenza completa. Con prerequisiti rispettati, monitoraggio degli eventi (4602/4604) e attenzione ai possibili blocchi (4612/4012), il percorso è lineare e non impatta la continuità del servizio dei GPO. Al termine, l’ambiente sarà allineato alle best practice moderne e pronto ad accogliere DC di ultima generazione.
Appendice: comandi utili
# Stato globale e di migrazione
dfsrMig /getGlobalState
dfsrMig /getMigrationState
Forza lettura config DFSR
dfsrdiag PollAD
Riepilogo replica AD
repadmin /replsummary
Verifica condivisione e path
Get-SmbShare -Name SYSVOL
net share
Verifica backlog DFSR SYSVOL
dfsrdiag backlog /rgname:"Domain System Volume" /rfname:"SYSVOL Share" /sendingmember: /receivingmember: