Поддержка схемы резервного копирования модуля записи
Для полной реализации резервного копирования требуется участие средств записи системы. Различные типы поддерживаемых резервных копий называются схемами и указываются битовой маской (или битовой маской) членов перечисления VSS_BACKUP_SCHEMA . Поддерживаемые в настоящее время допустимые схемы включают следующие:
Схема по умолчанию: полная (VSS_BS_UNDEFINED) — указывает, что модуль записи поддерживает резервное копирование, в котором будут создаваться резервные копии всех файлов независимо от даты их последней резервной копии. Журнал резервного копирования каждого файла может обновляться инициатором запроса, а модули записи, поддерживающие значение перечисления VSS_BS_TIMESTAMPED, будут хранить обновленную метку времени вместе с инициатором запроса. Эту схему резервного копирования можно использовать в качестве основы для добавочного или разностного резервного копирования.
Для восстановления полной резервной копии требуется только один образ резервной копии.
Copy Backup (VSS_BS_COPY) — как и схема резервного копирования VSS_BS_FULL, указывает, что модуль записи поддерживает резервную копию, в которой будут создаваться резервные копии всех файлов независимо от даты последней резервной копии. Однако журнал резервного копирования каждого файла не будет обновляться инициатором запроса или модулем записи, и такой тип резервной копии не может использоваться в качестве основы для добавочной или разностной резервной копии.
Файл журнала (VSS_BS_LOG) — резервное копирование выполняется только для файлов журнала модуля записи. Для этого необходимо, чтобы модуль записи добавил по крайней мере один файл хотя бы в один компонент с помощью метода IVssCreateWriterMetadata::AddDatabaseLogFiles . Этот тип резервного копирования является специфическим для VSS.
Пользовательские расположения восстановления (VSS_BS_WRITER_SUPPORTS_NEW_TARGET) — указывает на поддержку модуля записи для изменения запрашивающей стороны во время восстановления, где восстанавливаются его файлы. Это означает, что модуль записи был закодирован для проверка для такого перемещения (с помощью IVssComponent::GetNewTarget) и имеет емкость для работы с перемещенными файлами.
Восстановление с перемещением (VSS_BS_WRITER_SUPPORTS_RESTORE_WITH_MOVE) — указывает, что модуль записи поддерживает запуск нескольких экземпляров модуля записи с одинаковым идентификатором класса и поддерживает перемещение компонента в другой экземпляр модуля записи во время восстановления. Экземпляр модуля записи указывается с помощью имени экземпляра постоянного модуля записи, которое было передано в качестве параметра wszWriterInstanceName методу CVssWriter::Initialize . Инициатор запроса может получить имя экземпляра модуля записи с помощью IVssExamineWriterMetadataEx::GetIdentityEx и переместить компоненты во время восстановления с помощью IVssBackupComponentsEx::SetSelectedForRestoreEx.
Windows Server 2003 и Windows XP: Это значение не поддерживается до Windows Server 2003 с пакетом обновления 1 (SP1).
Добавочный (VSS_BS_INCREMENTAL) — указывает, что модуль записи использует API VSS для оказания помощи инициатору запроса, гарантируя, что только файлы, которые были изменены или добавлены с момента последней полной или добавочной резервной копии, будут скопированы на носитель хранилища.
Для восстановления добавочной резервной копии требуется исходный образ резервной копии и все образы добавочной резервной копии, сделанные с момента первоначального резервного копирования.
Дифференциальная (VSS_BS_DIFFERENTIAL) — указывает, что модуль записи использует API VSS, чтобы помочь инициатору запроса гарантировать, что только файлы, которые были изменены или добавлены с момента последней полной резервной копии, будут скопированы на носитель хранилища; все промежуточные сведения о резервном копировании игнорируются.
Для восстановления разностной резервной копии требуется исходный образ резервной копии и последний образ разностной резервной копии, сделанные с момента последней полной резервной копии.
Добавочный/разностный: поддержка меток времени (VSS_BS_TIMESTAMPED) — указывает, что модуль записи поддерживает использование механизма меток времени VSS для включения файлов в добавочные или разностные операции. При резервном копировании модуль записи должен сохранить метку резервного копирования набора файлов с помощью метода IVssComponent::SetBackupStamp , а при восстановлении получить его с помощью IVssComponent::GetPreviousBackupStamp.
Инкрементное/разностное: время последней модификации (VSS_BS_LAST_MODIFY) — указывает, что при реализации добавочных или разностных резервных копий с разностными файлами модуль записи может предоставлять сведения о времени последнего изменения независимо. Эти сведения можно предоставить инициатору запроса с помощью метода IVssComponent::AddDifferencedFilesByLastModifyTime .
Инкрементное/разностное: ограничение поддержки (VSS_BS_EXCLUSIVE_INCREMENTAL_DIFFERENTIAL) — указывает на поддержку модуля записи обеих схем разностного или добавочного резервного копирования, но только исключительно. Например, нельзя следовать добавочной резервной копии с помощью разностной резервной копии.
Независимое состояние системы (VSS_BS_INDEPENDENT_SYSTEM_STATE) — указывает, что модуль записи поддерживает резервное копирование данных, которые являются частью состояния системы, но могут также создаваться независимо от состояния системы.
Windows Server 2003 и Windows XP: Это значение не поддерживается до Windows Vista.
Roll-Forward Restore (VSS_BS_ROLLFORWARD_RESTORE) — указывает, что модуль записи поддерживает запрашивающую точку восстановления с помощью IVssBackupComponentsEx2::SetRollForward.
Windows Server 2003 и Windows XP: Это значение не поддерживается до Windows Vista.
Restore Rename (VSS_BS_RESTORE_RENAME) — указывает, что модуль записи поддерживает запросив имя восстановления с помощью IVssBackupComponentsEx2::SetRestoreName.
Windows Server 2003 и Windows XP: Это значение не поддерживается до Windows Vista.
Заслуживающее доверия восстановление (VSS_BS_AUTHORITATIVE_RESTORE) — указывает, что модуль записи поддерживает заслуживающее доверия восстановление запрашивающей стороны с помощью IVssBackupComponentsEx2::SetAuthoritativeRestore.
Модули записи задают свои схемы с помощью метода IVssCreateWriterMetadata::SetBackupSchema , а инициатор запроса получает схему каждого модуля записи, вызывая IVssExamineWriterMetadata::GetBackupSchema.