
Contexte
Dans un environnement Windows Server 2022 hébergeant des machines virtuelles (VM) sous Hyper‑V, disposer d’une stratégie de sauvegarde fiable est essentiel pour garantir la continuité de service. Les sauvegardes incrémentielles permettent de ne copier que les blocs modifiés depuis la dernière sauvegarde, réduisant ainsi la consommation de bande passante et d’espace disque.

Quand l’utiliser ?
- Vous avez plusieurs VM critiques et un stockage de sauvegarde limité.
- Vous souhaitez automatiser la procédure via un script planifié.
- Vous avez besoin d’une solution native sans recourir à un logiciel tiers.
🔹 Étapes de mise en œuvre
- Créer le répertoire de destination et définir les variables
$BackupRoot = "E:\HyperV_Backups" $VMName = "WebApp01" $VHDPath = "C:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machines" $LogPath = "$BackupRoot\Logs" New-Item -ItemType Directory -Force -Path $BackupRoot,$LogPath - Prendre un point de contrôle (checkpoint) de la VM
Checkpoint-VM -Name $VMName -SnapshotName "PreBackup_$(Get-Date -Format yyyyMMdd_HHmm)" - Lancer la sauvegarde incrémentielle avec
Export-VM$ExportPath = "$BackupRoot\$VMName\$(Get-Date -Format yyyyMMdd)" Export-VM -Name $VMName -Path $ExportPath -Force - Supprimer le checkpoint après export
Get-VMSnapshot -VMName $VMName | Where-Object {$_.Name -like "PreBackup_*"} | Remove-VMSnapshot -Confirm:$false - Conserver un journal d’exécution
"$(Get-Date) – Sauvegarde de $VMName vers $ExportPath" | Out-File -FilePath "$LogPath\Backup.log" -Append - Planifier la tâche avec le planificateur Windows
$Script = "C:\Scripts\HyperV-IncBackup.ps1" $Action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-NoProfile -ExecutionPolicy Bypass -File `"$Script`"" $Trigger = New-ScheduledTaskTrigger -Daily -At 02:00 Register-ScheduledTask -TaskName "HyperV_IncrBackup_WebApp01" -Action $Action -Trigger $Trigger -User "SYSTEM" -RunLevel Highest
⚠️ Méthode alternative
Si vous préférez une solution basée sur Microsoft Azure Backup Server ou Veeam Backup & Replication, vous pouvez créer un job de sauvegarde incrémentielle via leurs consoles graphiques. Cette approche offre des fonctionnalités avancées (déduplication, réplication hors site) mais nécessite une licence supplémentaire.
⚠️ Bonnes pratiques de sécurité
- Stockez les backups sur un volume séparé, idéalement en RAID 6 ou sur un NAS avec chiffrement au repos.
- Restreignez l’accès au répertoire
$BackupRootaux comptesNT SERVICE\Hyper-V VMMSet aux administrateurs. - Testez régulièrement la restauration d’une VM à partir d’un backup incrémentiel.
- Activez la journalisation détaillée (
-Verbose) en phase de test pour détecter d’éventuelles erreurs.
✅ Conclusion
En suivant ce tutoriel, vous avez automatisé la sauvegarde incrémentielle de vos machines Hyper‑V à l’aide de PowerShell, tout en assurant traçabilité et sécurité. N’hésitez pas à adapter le script pour gérer plusieurs VM ou à intégrer la compression des exports.
