Partager via


État de la sauvegarde VSS

Pendant une opération de sauvegarde, le demandeur utilise IVssBackupComponents::SetBackupState pour définir le type d’opération en cours.

Ces informations ne sont pas incluses dans un formulaire facilement récupérable dans le document composants de sauvegarde. Les développeurs demandeurs doivent donc stocker ces informations indépendamment sur n’importe quel support de sauvegarde.

L’état de sauvegarde contient les éléments suivants :

Type de sauvegarde

Le type de sauvegarde spécifie les critères d’identification des fichiers à sauvegarder. L’évaluation de ces critères doit être effectuée à l’aide de l’API VSS.

Lorsqu’ils décident du type de sauvegarde à poursuivre et des enregistreurs à utiliser, les demandeurs doivent examiner les types (ou schémas ) des opérations de sauvegarde prises en charge par chacun des rédacteurs du système. Les sauvegardes sous VSS peuvent être des types suivants :

  • Complet (VSS_BT_FULL) : les fichiers sont sauvegardés quelle que soit la date de leur dernière sauvegarde. L’historique de sauvegarde de chaque fichier est mis à jour et ce type de sauvegarde peut être utilisé comme base d’une sauvegarde incrémentielle ou différentielle. La restauration d’une sauvegarde complète ne nécessite qu’une seule image de sauvegarde.
  • Copie de sauvegarde (VSS_BT_COPY) : comme le type de sauvegarde VSS_BT_FULL, les fichiers sont sauvegardés quelle que soit la date de leur dernière sauvegarde. Toutefois, l’historique de sauvegarde de chaque fichier ne sera pas mis à jour et ce type de sauvegarde ne peut pas être utilisé comme base d’une sauvegarde incrémentielle ou différentielle.
  • Incrémentiel (VSS_BT_INCREMENTAL) : l’API VSS est utilisée pour garantir que seuls les fichiers qui ont été modifiés ou ajoutés depuis la dernière sauvegarde complète ou incrémentielle doivent être copiés sur un support de stockage. La restauration d’une sauvegarde incrémentielle nécessite l’image de sauvegarde d’origine et toutes les images de sauvegarde incrémentielles effectuées depuis la sauvegarde initiale.
  • Différentielle (VSS_BT_DIFFERENTIAL) : l’API VSS est utilisée pour garantir que seuls les fichiers qui ont été modifiés ou ajoutés depuis la dernière sauvegarde complète doivent être copiés sur un support de stockage . toutes les informations de sauvegarde intermédiaires sont ignorées. La restauration d’une sauvegarde différentielle nécessite l’image de sauvegarde d’origine et l’image de sauvegarde différentielle la plus récente effectuée depuis la dernière sauvegarde complète.
  • Fichier journal (VSS_BT_LOG) : seuls les fichiers journaux d’un writer (fichiers ajoutés à un composant avec la méthode IVssCreateWriterMetadata::AddDataBaseLogFiles et récupérés par un appel à IVssWMComponent::GetDatabaseLogFile) seront sauvegardés. Ce type de sauvegarde est spécifique à VSS.

Il est possible pour les demandeurs d’implémenter ces sauvegardes à l’aide d’informations et de méthodes en dehors de VSS. Ce n’est que lorsqu’un demandeur implémente une sauvegarde à l’aide de l’API VSS qu’il doit être considéré comme ayant l’un des types de sauvegarde répertoriés. Par instance, un demandeur participe à un type de sauvegarde VSS_BT_LOG uniquement s’il a utilisé les informations retournées par IVssWMComponent::GetDatabaseLogFile pour identifier les fichiers journaux. De même, les types VSS_BT_INCREMENTAL et VSS_BT_DIFFERENTIAL s’appliquent uniquement aux opérations incrémentielles ou différentielles, comme décrit dans Sauvegardes incrémentielles et différentielles.

Spécification relative à la possibilité de sélection

Une sauvegarde VSS peut choisir de respecter les notions VSS de la sélection des composants (c’est-à-dire s’exécuter en mode composant) ou de les ignorer.

Un exemple de non-exécution en mode composant serait l’exécution d’une sauvegarde d’image système, où l’application de sauvegarde aurait besoin d’une coopération d’enregistreur pour garantir la stabilité des données, mais où la sélection des composants ne serait pas pertinente.

Enregistrement de l’état de démarrage

VSS prend en charge l’enregistrement de l’état du système en cours d’exécution dans une configuration entièrement démarrable. Toutefois, cela n’est pas toujours nécessaire, et la préparation de l’enregistreur pour enregistrer un état de démarrage peut parfois dégrader les performances en temps réel d’un système en cours d’exécution.

Par conséquent, les demandeurs indiquent si une sauvegarde inclut un état système de démarrage comme argument pour IVssBackupComponents::SetBackupState. Les enregistreurs déterminent s’ils doivent prendre en charge l’enregistrement de l’état système de démarrage en appelant CVssWriter::IsBootableStateBackedUp.

Même si l’état du système de démarrage n’est pas sélectionné, des clichés instantanés des fichiers système sont effectués et les fichiers peuvent être sauvegardés.

Toutefois, la restauration des fichiers système doit être très soignée si la sauvegarde n’a pas enregistré l’état du système de démarrage (voir Sauvegarde et restauration de l’état du système dans Windows Server 2003 R2 et Windows Server 2003 SP1).

Il n’est pas possible de récupérer ces informations à partir d’un document de composants de sauvegarde récupéré. Les auteurs du demandeur doivent donc stocker si le système a été sauvegardé avec un état de démarrage ou non.

Prise en charge partielle des fichiers

Certains rédacteurs prennent en charge la restauration de fichiers par le biais du remplacement de parties des fichiers qu’ils gèrent. Un demandeur peut être conçu pour en tirer parti et, si tel est le cas, il l’indique en définissant les informations dans IVssBackupComponents::SetBackupState.