Migration des profils itinérants vers de nouveaux contrôleurs de domaine Windows Server 2019/2022 : procédure pas à pas sans interruption

Cette procédure détaillée vous guide pas à pas pour migrer en une seule fois l’ensemble de vos profils itinérants depuis d’anciens contrôleurs de domaine Windows Server vers de nouveaux DC, sans perte de données ni interruption perceptible pour les utilisateurs.

Sommaire

Vue d’ensemble

L’arrivée de nouveaux contrôleurs de domaine s’accompagne souvent d’un changement d’infrastructure de stockage : volumes plus rapides, déduplication, nouveau plan de sauvegarde, etc. Malheureusement, le chemin UNC inscrit dans chaque objet utilisateur (\\AncienSrv\Profils\%username%) continue de pointer vers l’ancien partage tant qu’il n’est pas remplacé. L’objectif de cette migration est donc triple :

  • Cloner intégralement les données de profil (y compris les attributs NTFS et les ACL).
  • Mettre à jour en masse le chemin de profil dans Active Directory.
  • Garantir une continuité de service totale : les utilisateurs retrouvent après la bascule exactement le même environnement qu’avant.

Schéma global de la migration

ÉtapeAction cléPoints d’attention
1. PréparationSauvegarde complète, planification en heures creuses.Vérifier l’espace disque et la fenêtre de maintenance.
2. Mise en place des nouveaux DCPromotion, réplication AD, tests de santé.Contrôler repadmin /replsummary, surveiller les journaux.
3. Copie des profilsrobocopy \\AncienSrv\Profils \\NouveauSrv\Profils /MIR /COPYALL /SECFIX /R:3 /W:5/MIR = miroir, /SECFIX = ACL correctes, journaliser l’opération.
4. Mise à jour ADGUI OU script : Set-ADUser -ProfilePath \\NouveauSrv\Profils\%username%Tests préalables sur un échantillon pilote.
5. Vérification des droitsChaque dossier = contrôle total pour l’utilisateur + administrateurs.icacls pour auditer.
6. GPO & dépendancesModifier redirections de dossiers, scripts de logon, GPO héritées.Envisager DFS-N / DFS‑R pour neutraliser les futures migrations.
7. Communication & basculeInformer, imposer déconnexion, recopie delta.Prévoir un créneau d’urgence en cas de rollback.
8. Tests & suiviConnexion avec comptes représentatifs, surveillance « User Profile Service ».Traiter vite les profils verrouillés (event ID 1508, 1511, 1521).

Pré‑requis techniques

Infrastructure

  • Nouveaux contrôleurs de domaine Windows Server 2019 ou 2022, niveau fonctionnel identique ou supérieur à l’ancien.
  • Volumes NTFS ou ReFS protégés par VSS, espace libre ≥ 120 % de la taille totale des profils.
  • Réseau Gigabit minimum entre anciens et nouveaux serveurs.

Sauvegarde et rollback

  • Instantané complet (Veeam, Windows Server Backup ou équivalent) du partage origine.
  • Plan de retour arrière : conserver l’ancien partage en lecture seule sept jours.
  • Documenter les valeurs d’origine (profilePath) pour chaque utilisateur.

Étape 1 : Préparation approfondie

Un audit initial évite 90 % des surprises :

# Taille cumulée des profils
Get-ChildItem '\\AncienSrv\Profils' -Directory | `
  Get-ChildItem -Recurse | Measure-Object -Sum Length

# Profils dépassant 5 Go

Get-ChildItem '\AncienSrv\Profils' -Directory |
Where-Object {($\_ | Get-ChildItem -Recurse | Measure-Object -Sum Length).Sum -gt 5GB}

Les profils anormalement volumineux (dépôts Git, Downloads, caches Teams) sont purgés avant la copie ; vous réduisez la fenêtre de maintenance et la bande passante consommée.

Étape 2 : Promotion des nouveaux DC

Le prérequis évident mais souvent bâclé : avant d’envisager la migration de profils, assurez‑vous que les nouveaux DC répondent à toutes les consoles MMC (ADUC, GPMC, DNS) et que la réplication inter‑sites est saine. Les commandes indispensables :

dcdiag /v
repadmin /replsummary
repadmin /showrepl * /csv > repl.csv

Tout avertissement « Last Success > 1 h » est une alerte rouge.

Étape 3 : Clonage fidèle avec Robocopy

Options essentielles

  • /MIR – miroir : supprime les fichiers en surplus sur la destination, impératif pour éviter les objets orphelins.
  • /COPYALL – conserve données, timestamps, listes de contrôle d’accès, informations d’audit.
  • /SECFIX – corrige les ACL déjà copiées si elles ont changé depuis la première passe.
  • /R:3 /W:5 – 3 tentatives, 5 s d’attente (bannit la boucle infinie par défaut).

Copie initiale hors production

robocopy \\AncienSrv\Profils \\NouveauSrv\Profils /MIR /COPYALL /SECFIX /R:3 /W:5 /LOG:C:\Logs\Profils_Init.log

Planifiez ensuite une delta juste avant la bascule (voir Étape 7) avec les mêmes paramètres ; la durée est proportionnelle aux seuls fichiers modifiés depuis la première passe.

Étape 4 : Mise à jour en masse du chemin de profil

Méthode graphique (OU ciblée)

  1. Dans Active Directory Users & Computers, basculez l’affichage sur « Advanced Features ».
  2. Sélectionnez l’OU complète (ou un filtrage par requête LDAP) ; clic droit ▸ Properties.
  3. Onglet Profile : remplacez \\AncienSrv\Profils\%username% par \\NouveauSrv\Profils\%username%.

Méthode PowerShell : zéro clic

$users = Get-ADUser -Filter * -SearchBase "OU=Comptes,DC=contoso,DC=local"
foreach ($u in $users) {
    $newPath = "\\NouveauSrv\Profils$($u.SamAccountName)"
    Set-ADUser $u -ProfilePath $newPath
}

Testez d’abord sur 5‑10 comptes pilotes :

# Exécution à blanc
Set-ADUser -WhatIf ...

Étape 5 : Audit des autorisations NTFS

Un dossier de profil doit posséder :

  • Propriétaire : Administrators.
  • Contrôle total : l’utilisateur lui‑même.
  • Contrôle total (hérité, non supprimable) : SYSTEM et Administrators.

Audit rapide :

icacls "\\NouveauSrv\Profils\*" /T /C | findstr /V "Successfully processed"

Tout résultat restant indique une ACL manquante ou corrompue.

Étape 6 : GPO, scripts et services dépendants

Redirection de dossiers (Folder Redirection)

Si vous redirigez Documents, Desktop ou AppData (Roaming), vérifiez que le chemin UNC visé est cohérent avec la nouvelle arborescence : idéalement \\Domaine\Profils$ ou un sous‑répertoire dédié.

DFS Namespaces (DFS‑N) et DFS Replication (DFS‑R)

Remplacer un chemin physique par un chemin logique DFS règle définitivement la question : à la prochaine migration, un simple basculement du lien DFS suffit.

  • Namespace : créez \\contoso.local\Profils$
  • Target : \\NouveauSrv\Profils
  • Replication : DFS‑R inter‑sites (optionnel) pour HA.

Étape 7 : Communication, déconnexion, recopie delta

Un message clair aux utilisateurs évite 80 % des incidents :

« [Nom IT] – Le 10 septembre 2025 à 18 h 00, vos sessions seront automatiquement fermées pour finaliser la migration de vos profils Windows. Merci de sauvegarder votre travail et de vous déconnecter avant 17 h 55. »

Recopie delta finale

robocopy \\AncienSrv\Profils \\NouveauSrv\Profils /MIR /COPYALL /SECFIX /R:1 /W:5 /LOG:C:\Logs\Profils_Delta.log

Un second passe‑filtre (/XO) est possible pour n’inclure que les fichiers plus récents que la destination.

Étape 8 : Tests et supervision post‑migration

Tests fonctionnels

  • Connexion interactive d’un utilisateur lambda : temps de logon identique ou inférieur.
  • Vérification des signatures Outlook, paramètres Edge/Chrome, barres d’outils Office.
  • Accès aux imprimantes mappées et aux lecteurs réseau persistants.

Supervision des journaux

Get-WinEvent -LogName "Microsoft-Windows-User Profile Service/Operational" `
  -MaxEvents 100 | Format-Table TimeCreated,Id,LevelDisplayName,Message -Auto

Principaux Event IDs à surveiller :

IDSignificationAction recommandée
1508Impossible d’ouvrir le registre du profil.Vérifier autorisations NTFS + status du registre de l’utilisateur.
1511Session avec profil temporaire.Analyser chemin UNC, supprimer la clé SID.bak si besoin.
1521Échec de chargement du profil.Replay Robocopy ou restaurer depuis VSS.

Optimisations et bonnes pratiques post‑bascule

Mise en place de quotas FSRM

Limiter la taille du profil à 1 Go/2 Go selon les rôles évite les temps de logon interminables. Activez la notification par e‑mail pour l’utilisateur et le helpdesk.

Nettoyage automatisé des caches volumineux

# Exemple : purge cache Teams
$profiles = Get-ChildItem '\\NouveauSrv\Profils' -Directory
foreach ($p in $profiles) {
    Remove-Item "$($p.FullName)\AppData\Roaming\Microsoft\Teams\Cache\*" -Recurse -Force
}

Backup incrémental naturel via VSS

Activez 2 à 3 clichés instantanés (snapshots) journaliers ; un utilisateur ayant supprimé un fichier de profil peut le restaurer via l’onglet Previous Versions.

FAQ & dépannage rapide

Le chemin a bien changé mais l’utilisateur reçoit un profil temporaire. Le contenu n’a pas été copié intégralement (NTUSER.DAT manquant) ou les droits NTFS sont corrompus. Robocopy échoue avec « Accès refusé ».  L’utilisateur courant n’a pas l’attribut Backup operators sur la source ; exécuter sous runas /user:DOMAIN\Administrator. Comment restaurer un seul profil ? Rétablissez l’ancien chemin UNC dans l’attribut profilePath, recopiez à nouveau avec Robocopy, puis remettez le nouveau chemin.

Conclusion

En suivant cette méthode éprouvée – sauvegarde préalable, réplication AD stable, clonage Robocopy en deux temps, mise à jour atomique du profilePath, audits et tests – vous migrez des dizaines, voire des milliers de profils itinérants vers de nouveaux contrôleurs de domaine en toute sérénité. L’ajout d’un namespace DFS et de quotas FSRM pérennise l’environnement et simplifie les opérations futures.

Sommaire