Files
Infra-LAB/README-Sync.md

3.9 KiB

📋 Script de Synchronisation vers C:\MDT

📝 Description

Ce script automatise la synchronisation des dossiers Control et Scripts du projet MDT vers C:\MDT.

Fonctionnalités:

  • Détecte les fichiers modifiés via hash MD5
  • Copie les fichiers manquants
  • Crée automatiquement la structure de dossiers
  • Mode DRY-RUN pour prévisualiser les changements
  • Résumé détaillé des opérations

🚀 Utilisation

Option 1: Interface Interactive (Recommandé)

Double-cliquez sur Sync-ToMDT.bat pour lancer l'interface de menu:

1. Mode DRY-RUN (afficher ce qui serait fait)
2. Synchroniser MAINTENANT (vrai changement)
3. Quitter

Option 2: Direct PowerShell

Mode DRY-RUN (test):

.\Sync-ToMDT.ps1 -DryRun

Mode RÉEL (synchronisation):

.\Sync-ToMDT.ps1

Avec chemins personnalisés:

.\Sync-ToMDT.ps1 -SourceBase "C:\Dev\Infra-LAB\projects\MDT" -DestinationBase "C:\MDT"

📊 Exemple de Sortie

╔════════════════════════════════════════════════════════╗
║  Script de Synchronisation vers C:\MDT                  ║
╚════════════════════════════════════════════════════════╝

Source: C:\Dev\Infra-LAB\projects\MDT
Destination: C:\MDT

=== Synchronisation du dossier: Control ===
  [NOUVEAU] CustomSettings.ini
  [MODIFIÉ] Settings.xml
  [NOUVEAU] Medias.xml

Résumé - Control:
  • Fichiers ajoutés: 2
  • Fichiers mis à jour: 1
  • Fichiers inchangés: 1

=== Synchronisation du dossier: Scripts ===
  [NOUVEAU] BDD_Autorun.wsf
  ...

Résumé - Scripts:
  • Fichiers ajoutés: 5
  • Fichiers mis à jour: 3
  • Fichiers inchangés: 42

╔════════════════════════════════════════════════════════╗
║  ✓ Synchronisation terminée avec succès               ║
╚════════════════════════════════════════════════════════╝

🔍 Détails Technique

Ce que le script fait:

  1. Parcourt tous les fichiers des dossiers source Control et Scripts
  2. Pour chaque fichier:
    • S'il n'existe pas en destination → COPIE
    • S'il existe mais est différent (hash MD5) → MET À JOUR 🔄
    • S'il existe et est identique → IGNORE ⏭️
  3. Crée automatiquement les dossiers nécessaires
  4. Affiche un rapport détaillé

Algorithme de comparaison:

  • Utilise MD5 pour détecter les modifications
  • Rapide et fiable pour les fichiers texte et binaires
  • Ignore la date de modification (plus précis)

⚠️ Important

  • DRY-RUN mode: Affiche ce qui serait fait SANS rien modifier
  • À toujours tester d'abord en DRY-RUN avant synchronisation réelle
  • Assurez-vous d'avoir les permissions d'accès sur C:\MDT
  • Le script ne supprime jamais les fichiers en destination

📌 Cas d'usage

✓ Mise à jour automatique des configurations MDT
✓ Synchronisation après modification des fichiers source
✓ Automatisation avec Task Scheduler
✓ Intégration dans des scripts de déploiement

🛠️ Troubleshooting

Erreur: "Le script n'a pas pu être chargé"

Exécutez en PowerShell:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

Erreur: "Accès refusé à C:\MDT"

  • Vérifiez les permissions sur C:\MDT
  • Exécutez PowerShell en administrateur (clic droit → "Exécuter en tant qu'administrateur")

Le script va lentement

  • Normal pour de grandes structures (centaines de fichiers)
  • La vérification MD5 prend du temps, c'est l'échange qualité/vitesse