Exclusion de fichiers à partir de clichés instantanés

Dans Windows Vista et Windows Server 2008 et versions ultérieures, le développeur d’un enregistreur VSS ou d’une application peut choisir d’exclure certains fichiers des clichés instantanés.

L’impact sur les performances et la zone de stockage des clichés instantanés (également appelée « zone de différences ») d’un fichier dans une copie instantané sont directement liées à la quantité de modification du contenu du fichier une fois la copie d’ombre créée. En outre, l’exclusion des fichiers des clichés instantanés peut ralentir la création de clichés instantanés.

Pour ces raisons, un fichier doit être exclu des clichés instantanés uniquement s’il est volumineux, subit une modification significative entre une copie instantané et la suivante, et n’a pas besoin d’être sauvegardé.

Vous ne devez exclure que les fichiers appartenant à votre application.

Si l’indicateur VSS_VOLSNAP_ATTR_NO_AUTORECOVERY est défini dans le contexte de cliché instantané, cela signifie que la récupération automatique est désactivée et qu’aucun fichier ne peut être exclu de la copie instantané. Pour plus d’informations, consultez l’énumération _VSS_VOLUME_SNAPSHOT_ATTRIBUTES .

Utilisation de la méthode AddExcludeFilesFromSnapshot

Un enregistreur VSS peut exclure des fichiers d’une copie instantanée comme suit :

  1. Appelez la méthode IVssCreateWriterMetadataEx::AddExcludeFilesFromSnapshot pour signaler les fichiers à exclure.
  2. Dans la méthode CVssWriter::OnPostSnapshot de l’enregistreur, supprimez les fichiers de la copie fantôme.

Utilisation de la clé de Registre FilesNotToSnapshot

Notes

La clé de Registre FilesNotToSnapshot est destinée à être utilisée uniquement par les applications. Les utilisateurs qui essaient de l’utiliser rencontrent les limitations suivantes :

  • Elle ne permet pas de supprimer des fichiers d’un cliché instantané créé sur un serveur Windows Server à l’aide de la fonctionnalité Versions précédentes.
  • Elle ne permet pas de supprimer des fichiers des clichés instantanés pour dossiers partagés.
  • Il peut supprimer des fichiers d’une copie instantané créée à l’aide de l’utilitaire DiskShadow , mais il ne peut pas supprimer des fichiers d’une copie instantané créée à l’aide de l’utilitaire Vssadmin .
  • Les fichiers sont supprimés d’un cliché instantané autant que faire se peut. Cela signifie que leur suppression n’est pas garantie.

 

Une application VSS peut supprimer des fichiers d’une copie instantané lors de la création de clichés instantanés à l’aide de la clé de Registre suivante :

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\BackupRestore\FilesNotToSnapshot

Cette clé de Registre a REG_MULTI_SZ valeurs pour chaque application dont les fichiers peuvent être exclus. Les fichiers sont spécifiés par des chemins complets, qui peuvent contenir le caractère générique * .

Dans tous les cas, l’entrée est ignorée s’il n’y a aucun fichier correspondant à la chaîne de chemin d’accès.

Une fois qu’un fichier est ajouté à la valeur de clé de Registre appropriée, il est supprimé de la copie instantanée lors de la création par l’enregistreur d’optimisation de la copie instantané sur une base optimale.

Si un chemin complet ne peut pas être spécifié, un chemin peut également être implicite à l’aide de la variable $UserProfile$ ou $AllVolumes$. Par exemple :

  • $UserProfile$\Directory\Subdirectory\FileName.*
  • $AllVolumes$\TemporaryFiles\*.*

Pour rendre le chemin récursif, ajoutez « /s » à la fin. Par exemple :

  • $UserProfile$\Directory\Subdirectory\FileName.* /s
  • $AllVolumes$\TemporaryFiles\*.* /s

La variable $UserProfile$ entraîne l’application de la chaîne de chemin d’accès à tous les profils utilisateur sur l’ordinateur. Les profils utilisateur sont énumérés en examinant la clé de Registre suivante :

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProfileList

La variable $AllVolumes$ entraîne l’application de la chaîne de chemin à toutes les clichés instantanés sur l’ordinateur. Par exemple, supposons que le chemin est « $AllVolumes$\TemporaryFiles\*.* /s », et que l’ordinateur a trois volumes : C:, D:et E:. Si C : et E : contiennent le chemin d’accès « \TemporaryFiles\ » et le volume D : contient uniquement le chemin D:\Data\, l’arborescence de répertoireS C:\TemporaryFiles\ est supprimée des clichés instantanés de C:, et l’arborescence de répertoireS E:\TemporaryFiles\ est supprimée des copies d’ombres d’E:.

Les administrateurs peuvent désactiver l’expansion de la variable $UserProfile$ à l’aide de la clé de Registre suivante :

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Vss\Settings

Sous cette clé de Registre, spécifiez DisableUserProfileExpansion pour le nom de la valeur, REG_DWORD pour le type de valeur et une valeur non nulle pour les données de valeur.

À propos de la clé de Registre FilesNotToBackup

La clé de Registre FilesNotToBackup peut être utilisée pour spécifier les noms des fichiers et répertoires que les applications de sauvegarde ne doivent pas sauvegarder ou restaurer. Toutefois, il n’exclut pas ces fichiers des clichés instantanés. Pour plus d’informations sur cette clé de Registre, consultez Clés et valeurs de Registre pour la sauvegarde et la restauration.