État de 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 de 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.
Lorsque vous décidez du type de sauvegarde à poursuivre et avec lequel les enregistreurs fonctionnent, les demandeurs doivent examiner les types (ou schémas), consultez prise en charge du schéma de sauvegarde de l’enregistreur) des opérations de sauvegarde que chacun des enregistreurs du système prend en charge. Les sauvegardes sous VSS peuvent être les types suivants :
- Complet (VSS_BT_FULL) : les fichiers sont sauvegardés indépendamment de leur dernière date de 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.
- Copiez la sauvegarde (VSS_BT_COPY) comme le type de sauvegarde VSS_BT_FULL, les fichiers seront sauvegardés indépendamment de leur date de 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 s’assurer 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émentielle effectuées depuis la sauvegarde initiale.
- Différentielle (VSS_BT_DIFFERENTIAL) : l’API VSS est utilisée pour s’assurer 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 enregistreur (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 que les demandeurs implémentent ces sauvegardes à l’aide d’informations et de méthodes en dehors de VSS. Uniquement lorsqu’un demandeur implémente une sauvegarde à l’aide de l’API VSS doit être dit avoir l’un des types de sauvegarde répertoriés. Par exemple, 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 sur la sélection
-
Une sauvegarde VSS peut choisir de respecter les notions de sélection des composants VSS, appelées mode composant, ou pour les ignorer.
Un exemple de non-exécution en mode composant effectuerait 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 de composants ne serait pas pertinente.
-
enregistrement de l’état de démarrage
-
VSS prend en charge l’enregistrement de l’état 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 en tant qu’argument pour IVssBackupComponents ::SetBackupState. Les enregistreurs déterminent s’ils doivent prendre en charge l’enregistrement de l’état du système de démarrage en appelant CVssWriter ::IsBootableStateBackedUp.
Même si l’état système de démarrage n’est pas sélectionné, les clichés instantanés des fichiers système sont effectués et les fichiers peuvent être sauvegardés.
Toutefois, il convient d’exercer un grand soin dans la restauration des fichiers système 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é, de sorte que les auteurs de demandeurs doivent stocker si le système a été sauvegardé avec un état système de démarrage ou non.
-
prise en charge partielle des fichiers
-
Certains enregistreurs prennent en charge la restauration des fichiers par le biais de l’écriture de parties des fichiers qu’ils gèrent. Un demandeur peut être conçu pour tirer parti de cela et, si tel est le cas, il indique cela en définissant les informations dans IVssBackupComponents ::SetBackupState.